
我是託管自己的網頁伺服器的新手。我很好奇,這可能是一個愚蠢的問題,但是什麼位置對於在網路上託管來說是實用且安全的? /home/user/ 或 /var/www/html?因為我下載的套件需要和我的論壇、部落格在同一個位置。最好的使用位置是?因為我不確定npm包是否可以在www/html。請就此向我提出建議。
使用nginx 1.6
答案1
我建議將它放在您方便的地方,可能會在您的根目錄中建立另一個目錄。
這裡唯一需要注意的是您將為網站目錄設定的檔案系統權限。
答案2
長話短說
我使用 /srv 作為 Web 伺服器內容,使用 /var 作為一般內容。
更長的解釋
對我來說,/var 意味著生成的內容。我將在 /var 中使用文字處理(在導入資料庫或其他內容之前),但我總是使用 /srv 作為伺服器端元件(即 py、php)。 20 年來,我從未使用過 /var/www/html。除了對我的口味而言過於隱藏之外,它也是不誠實的,因為我不提供 HTML 文件;我提供的生成內容可能與 HTML 相關,也可能無關。更不用說某些軟體包將簡單地對其頒布徵用權。只是避免它。
首先:不要在 / 中建立另一個目錄。這絕對是一個瘋狂的想法。永遠不要這樣做。 / 是神聖的。輕輕地走,因為你在聖地。
話雖如此,您提到了軟體包;這通常是 /usr/local 的用途。您可能會發現無論如何這些東西都會安裝在那裡。 /usr/share 是另一個更受歡迎的地方。在這件事上你可能別無選擇;檢查包是否已具有預定義位置。
無論你做什麼,只要確保你設定了正確的所有權(範例路徑;如果你願意,可以使用 /var - 你必須做出自己的決定):
sudo chown -R www-data:www-data /srv*
我建議你看一下官方的東西:http://www.pathname.com/fhs/pub/fhs-2.3.html
不要相信那些在沒有使用至少 3 段文字來解釋的情況下說「這是為了這一件事,那是為了那一件事」的人。界線已經模糊。當您閱讀 /tmp 和 /var 時,您最初可能會覺得它們是同一件事,但您很快就會了解到真正的區別(特別是如果您所在的系統根本不保留 /tmp)。
FHS 非常類似於語言,其中單字沒有太多的定義(就像人們在小學中學到的那樣),但具有語義範圍的含義(就像人們在研究生院中學到的那樣)。需要時間去感受它。如果您牢記語義範圍,您將在 Debian 和基於 RedHat 的系統之間更順利地轉換。