Apache-2.2
對 Apache 數據和日誌使用 /var 或 /srv?
我一直是這樣配置 Apache 的:
/etc/httpd/conf/httpd.conf(主要 Apache 配置)
<Directory /> Options None AllowOverride None Order deny,allow Deny from all </Directory> <Directory "/var/www/html"> Options None AllowOverride None Order deny,allow Deny from all </Directory>
虛擬主機配置
<VirtualHost *:80> ServerName xxxxx.co.uk ServerAlias xxxxx.co.uk xxxxx DocumentRoot /var/www/html/xxxxx.co.uk ErrorLog /var/www/log/xxxxx.co.uk <Directory "/var/www/html/xxxxx.co.uk"> AllowOverride None Options -Indexes -FollowSymLinks Order Allow,Deny Allow from all </Directory> </VirtualHost>
我注意到有些人似乎為網路內容和日誌創建了一個特定的文件夾,即
/srv/html/xxxxx.co.uk /srv/log/xxxxx.co.uk
我想知道是否有人可以解釋為什麼會這樣?這樣做更安全嗎?是否有任何其他原因將 Web 內容內容移出 /var/….. 路徑?
提前致謝 :-)
除了 Mike 關於 FHS 的觀點,這裡是來自 Ubuntu 論壇的討論:
http://ubuntuforums.org/showthread.php?t=1425726
最好的評論是:
/var 是一個較舊的約定。它適用於隨時間變化的數據(“可變數據”),例如記憶體、假離線、日誌、各種內務管理和管理文件,而“使用者數據”將位於主目錄中,……但在某些時候,可能由於缺乏任何其他合適的地方,/var 也成為守護程序將服務於其他系統和使用者(例如數據庫和網頁)的“數據”的地方。當然,這些文件也會“隨著時間而改變”,但我同意網站和系統日誌之間存在差異。
Debian 仍然預設使用 /var 儲存數據,但可能大多數“舊” linux 都這樣做(例如 Redhat),並且大多數文件也假定 /var 用於這類東西,儘管我在某些 (不太傳統的)應用程序的管理指南。
FWIW,CentOS 6 有一個 /srv 目錄,但它是空的,而 Apache,例如,預設為 /var/www 作為根目錄。可以證明,
/srv/logs
在您的範例中應該按照慣例正確放置/var
,因為日誌不是您的機器提供的東西。