在 apache 上運行的網站目錄的最佳所有者/權限設置

在 apache 上運行的網站目錄的最佳所有者/權限設置

我在我的虛擬伺服器上運行 Ubuntu,並且我已經設定了很多與我的主題相關的設定。但我不太確定它是否設置正確。

我目前的設定如下:

阿帕契2:

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_PID_FILE=/var/run/apache2.pid

我讀過有關添加額外用戶(例如sudo adduser apache運行 apache 伺服器)的文章,那麼什麼是好的選擇呢?

網站目錄:

drwxr-xr-x 5 www-data:www-data 4.0K Feb  5 04:16 mysite/

例如,該目錄位於/var/www.我的目錄中的資料夾設定是chmod 755,我的檔案是644.它應該歸 www-data 還是我的用戶名所有?

如果您能給我一些這方面的最佳實踐,我會很高興。謝謝您的建議!

答案1

我學到的最重要的事情是不要給 Apache 寫入訪問任何您不需要寫的內容的權限,例如快取、使用者或您可以上傳內容的下載目錄。

sudo chown user:user因此,透過網站目錄等內容獲得所有內容的所有權,並授予o其他部分所需的權限......。

替換user:user為您想要的使用者和群組。

在目錄中,您可以使用以下命令:

sudo chmod o+rx /var/www/'directory' #make directory read and executable for other
sudo chmod o-wx /var/www/'directory'/'files' #remove write and execute from files
sudo chmod o+r  /var/www/'directory'/'files' #add read to files

您也可以使用find稍微高級但使工作更容易一些的命令,例如(在擁有文件後):

chown user:user /var/www/ -R # this is only an example.. 
  • 目錄
find /var/www/ -type d -exec sudo chmod o+rx {} \; 
  • 文件
find /var/www/ -type f -exec sudo chmod o-wx {} \;
find /var/www/ -type f -exec sudo chmod o+r {} \;

我嘗試盡可能地進行描述。如果需要的話我可以解釋更多。這討論了大約一半的權限:

http://www.linuxforums.org/forum/servers/5270-apache-conf-html-permissions.html

相關內容