GNU/Linux >> Znalost Linux >  >> Linux

Jaký je doporučený adresář pro ukládání obsahu webových stránek?

Neexistuje žádný "nejlepší" adresář. A přestože lidé mohou namítat, že tato otázka je subjektivní nebo že na skutečném umístění souborů nezáleží – a v tom druhém mají pravdu – existují standardizovaná doporučení, kam co umístit v systémech podobných Unixu.

Standard Hierarchy Filesystem to definuje a nabízí vám následující:

  • /var – místo pro uložení dat, která se během normálního provozu mění, jako jsou protokoly atd. /var/www je výchozí adresář pro umístění webového obsahu pro Apache, ale jeho použití není vůbec standardizováno a je to jen "obvyklé" místo, kam byste ho umístili, protože lidé výchozí nastavení příliš často nemění.

  • /srv – tento adresář by měl obsahovat data obsluhovaná systémem. Toto je obvykle místo, které chcete. FHS vysvětluje:

    Hlavním účelem této specifikace je, aby uživatelé mohli najít umístění datových souborů pro konkrétní službu a aby bylo možné rozumně umístit služby, které vyžadují jeden strom pro data pouze pro čtení, zapisovatelná data a skripty (jako jsou skripty cgi). Data, která zajímají pouze konkrétního uživatele, by měla být uložena v domovském adresáři tohoto uživatele. (…)

    Jedna metoda pro strukturování dat pod /srv je protokolem, např. ftp , rsync , www a cvs

    Jednoduše tedy vytvořte /srv/www adresář a použijte tento. Můžete vytvořit podsložky pro každého virtuálního hostitele, kterého budete chtít obsluhovat se svým počítačem.

  • /home obsahuje soubory, které by skutečně měly patřit pouze jednomu uživateli. Apache například umožňuje userdirs, takže můžete přistupovat k webovým souborům uživatele přes http://example.com/~username a jsou poskytovány z public_html adresář v domově uživatele.

    Pokud používáte server, který sdílí více lidí, a chcete každému umožnit hostovat vlastní skripty, měli by jít sem. Nezapomeňte, aby do adresářů mohl zapisovat pouze uživatel, kterému patří.

V podstatě /srv/www a /var/www jsou adresáře, ve kterých byste měli vytvářet podadresáře pro jakýkoli webový projekt, který byste mohli chtít hostit. Poté můžete pro tyto adresáře definovat různá oprávnění, abyste do nich mohli zapisovat určitým uživatelům nebo skupinám uživatelů. Pokud máte projekty pro jednoho uživatele najednou, použijte /home .


Soubory můžete umístit kamkoli, pokud k nim věci mají správný přístup, ale přeplněné souborové systémy jsou bolesti hlavy, pokud někdo přijde později.

/srv je nejlogičtější plus, pokud budete postupovat podle Filesystem Hierarchy Standard, bude to tady.

Pokud děláte více domén, můžete udělat /srv/domain1 /srv/domain2 atd. atd., pak podsložku uvnitř /ftp /www /tftp /logs /etc.etc.etc

Podle mě je to velmi pevná struktura, na které lze stavět a která se snadno ovládá

Ale jako správce můžete dělat čistotu nebo nepořádek, jak chcete.


Dobře, snadná rychlá odpověď.

Pokud k vašim webovým souborům v systému bude mít přístup pouze JEDEN uživatel na linuxovém systému. Použijte domovský adresář uživatele (~/ ).

Pokud vaše webové soubory v systému budou mít přístup VÍCE uživatelů na linuxovém systému. Použijte /srv/ .

Přesně toto uvádí http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEM.

Zde je citace:

/srv obsahuje data specifická pro web, která je obsluhována tímto systémem.

Hlavním účelem specifikace je to, aby uživatelé mohli najít umístění datových souborů pro konkrétní službu a aby bylo možné rozumně umístit služby, které vyžadují jeden strom pro data pouze pro čtení, zapisovatelná data a skripty (jako jsou skripty cgi). Data, která zajímají pouze konkrétního uživatele, by měla být uložena v domovském adresáři tohoto uživatele.

Bonus:www? ftp? Organizovat podle protokolu? Co?

Jak je uvedeno zde na http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEM

  • Pokud vaše webové stránky navštěvuje pouze JEDEN uživatel v systému a POUZE prostřednictvím prohlížeče (protokol http), pak:~/http/your-website-directory/
  • Pokud vaše webové stránky navštěvuje pouze JEDEN uživatel v systému a NEJEN prostřednictvím prohlížeče, ale několika protokolů (např. http A tcp AND ...), pak:~/your-website-directory/
  • Pokud vaše webové stránky navštěvuje VÍCE uživatelů v systému a POUZE prostřednictvím prohlížeče (protokol http), pak:/srv/http/your-website-directory/
  • Pokud váš web navštěvuje VÍCE uživatelů v systému a NEJEN přes prohlížeč, ale více protokolů (např. http A ftp A ...), pak:/srv/your-website-directory/

Proč ne www? Toto je dědictví z doby Apache. www neuvádí, který protokol se používá. Debian to dodnes používá, zatímco například Arch linux používá /srv/http.


Linux
  1. Linux – jaké souborové systémy v systému Linux ukládají dobu vytvoření?

  2. Cloudové zálohování vs. místní zálohování:Nejbezpečnější způsob ukládání dat

  3. Co dělá systémové volání brk()?

  1. Jaká by měla být ideální oprávnění k domovskému adresáři v linuxu

  2. Co znamená přípona .d v Linuxu?

  3. Kde je konvenční místo pro ukládání git repozitářů ve stromu souborového systému linux?

  1. Jaký je účel „uživatele systému“ v replikaci MySQL

  2. Jaká je velikost atomového zápisu na disk v mém systému?

  3. Jaké jsou důsledky pro výkon milionů souborů v moderním souborovém systému?