GNU/Linux >> Znalost Linux >  >> Linux

Měly by weby žít ve /var/ nebo /usr/ podle doporučeného použití?

Řešení 1:

Podle FHS, /usr je pro shareable, read-only data - ne tam, kam chcete web umístit. Zde byste měli umístit svůj kód (například Fedora to dělá pro Wordpress). Viz také průvodce balením webových aktiv pro Fedoru.

/var je "soubory s proměnnými daty. Patří sem adresáře a soubory pro zařazování, administrativní a protokolovací data a přechodné a dočasné soubory." -- lepší, ale stále ne úplně správné -- ale mnoho systémů bude používat /var/www , takže i když to tam vložíte špatně, jste v dobré společnosti.

/srv je pro "data specifická pro web, která jsou obsluhována tímto systémem." -- což vypadá jako dobrá shoda, ale je mnohem méně obvyklé než /var/www .

Dalším běžným místem pro umístění souborů webu je /home -- vytvořením speciálního uživatele s názvem website nebo podobně a poté umístíte soubory do domovského adresáře daného uživatele (např. /home/website ).

Řešení 2:

Podívejte se na Filesystem Hierarchy Standard (Wikipedia). Já sám používám /srv/web/$domain/{htdocs,logs,cgi-bin,...}.

Řešení 3:

Webové stránky by měly žít v domovských adresářích uživatelů. Jsou to uživatelská data, měla by být izolována jedním uživatelem na web a dynamický obsah by měl opět běžet jako samostatný uživatel se soubory, které musí dynamický obsah číst a upravovat, má-li k tomu příslušná oprávnění.

Aktualizace:

To, že se nejedná o sdílený hostingový server, neznamená, že byste se neměli zapojit do správných bezpečnostních postupů a oddělovat nezávislé role do jejich vlastních bezpečnostních zón.

Řešení 4:

Definitivním vodítkem je standard Filesystem Hierarchy Standard, který říká, že /srv je to správné místo.

Řešení 5:

Na tom, kde žijí na disku, nezáleží. Jsou tam, kde je chcete.

Na všech svých strojích mám symbolický odkaz z /www na místo, kde skutečně žijí, takže se nikdy nemusím divit od stroje ke stroji. Některé starší stroje mají /u0 a /u1 pro uživatelské disky a tam umisťuji webové věci. Některé mají /home namontované přímo, takže tam chodí, ale /www vždy ukazuje na správné místo.

Také nevkládám žádnou konfiguraci do /usr ani do /var. Jde to do /local (což, jak uhodli, je symbolický odkaz někde na /u0 nebo /u1). Díky tomu je zálohování věcí snadné. Jen zálohuji uživatelské disky.

Samozřejmě mám hlavní distribuční web pro svůj operační systém, NetBSD. Udělám systém tak, jak ho chci na tomto hlavním počítači (opravdu xen instance) a kolem něj rsync /usr. Usnadňuje mi život.


Linux
  1. Django static_root v /var/www/... - žádná oprávnění ke collectstatic

  2. Kdy mám použít /dev/shm/ a kdy /tmp/?

  3. Jak zjistit, ze které složky běží proces?

  1. Jaké jsou významy /usr/sbin, /usr/local/sbin a /usr/local/bin?

  2. Proč dávat věci jiné než /home do samostatného oddílu?

  3. echo nebo print /dev/stdin /dev/stdout /dev/stderr

  1. Linux:Rozdíl mezi /dev/console, /dev/tty a /dev/tty0?

  2. Proč jsou < nebo > vyžadovány pro použití /dev/tcp

  3. Jak změnit výchozí /tmp na /home/user/tmp