首頁 >後端開發 >php教程 >Warning:DocumentRoot 錯誤解決方法

Warning:DocumentRoot 錯誤解決方法

WBOY
WBOY原創
2016-07-30 13:30:141951瀏覽

安裝時考慮到安全,準備將DocumentRoot單獨放置在一個分區裡,所以在邏輯分區專門為它建了一個目錄為:/Dmnr
  為了掛載該分區設/etc/fstab為:
  代碼:…
  LABEL=/Dmnr /Dmnr ext3 defaults 1 2
  目錄建好後將網站內容拷入該目錄下的www/html,並修改/etc/httpd/conf/httpd.conf如下:
  [php]
  …
  DocumentRoot “/Dmnr/www/html”
  …
  …
  [/php]
  重起Apache出現如下錯誤提示:
  程式碼:#service httpd restart
  Starting httpd: Warning: DocumentRoot [/Dmnr/www/html] does not exist
  [ OK ]
  當然伺服器不會正常工作,Apache認為這個不是目錄!但是將DocumentRoot 「」對準其它目錄則沒有問題,伺服器可以正常工作。
  解決:
  一. SELinux 的配​​置( 略… ),可以參考:
  http://www.chinalinuxpub.com/read.php?wid=1010
  http://blog.josesun.org/archives/2004_08/2
  二. 修改 html 目錄權限:
  1. 檢查網站內容目錄
  [php]
  #ls -Z /Dmnr/www/html
  [/php]
  狀態為:
  [php]
  -rwxr-xr-x someuser somegroup index.php
  …
  [/php]
  2. 顯然沒有 SELinux 權限,所以做以下修改:
  [php]
  chcon -R -t httpd_user_content_t /Dmnr/www/html
  [/php]
  再看就是這樣:
  [php]
  -rwxr-xr-x someuser somegroup user_u:object_r:httpd_sys_content_t index.php
  …
  [/php]
  重啟 httpd 一般的 php 就可以工作了。
  三. 資料庫
  1. Mysql
  但是當讀寫資料庫時還會被 SELinux 拒絕,到 /var/lib/mysql 或 /var/lib/pgsql 下看沒有問題,權限是這樣的:
  [php]
  -rw-rw—- mysql mysql root:object_r:mysqld_db_t ibdata1
  -rw-rw—- mysql mysql root:object_r:mysqld_db_t ib_logfile0
  -rw-rw—- mysql mysql root:object_r:mysqld_db_t ib_logfile1
  drwx—— mysql mysql root:object_r:mysqld_db_t mysql
  srwxrwxrwx mysql mysql root:object_r:mysqld_var_run_t mysql.sock
  drwx—— mysql mysql root:object_r:mysqld_db_t test
  [/php]
  但是到放了資料的 test 庫底下看就知道自建的表還是沒有 SELinux 權限,沒關係,修改就是了:
  [php]
  chcon -R -t mysqld_db_t /var/lib/mysql
  [/php]
  注意!此處的 SELinux 屬性是 mysqld_db_t
  2. pgsql
  我還開了 PostgreSQL 的函式庫,用此方法修改屬性沒有成功,報錯:
  [php]
  chcon: can’t apply partial context to unlabeled file pgsql/data/base/23456
  chcon: can’t apply partial context to unlabeled file pgsql/data/base/12345
  [/php]
  到 /var/lib/pgsql/data/base 下看,原來是自建庫 12345 和 23456 不能套用屬性。找資料找的亂七八糟,半天也沒頭緒,算了!
  [php]
#su - postgres
cd /li b/pgs data /basee 以上就介紹了Warning:DocumentRoot 錯誤解決方法,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:php_array下一篇:php_array