CentOS下.htaccess不起作用的解決方法
更新時間:2011年04月02日 20:33:14 作者:
PHP 5.2的問題解決后,現在就是安裝WordPress了。裝好了沒有任何問題,接下來繼續(xù)配置WordPress,開啟靜態(tài)URL鏈接。然后手動編輯了.htaccess文件,將WordPress生成的相關代碼拷貝進去了。
結果點擊一個鏈接直接404 Not Found。悲劇,看來Apache的Rewrite部分有問題了,完全無視掉了.htaccess文件!經過檢查Apache的模塊,發(fā)現Rewrite模塊是開啟的狀態(tài),看來是httpd.conf文件中的配置有點問題了?;叵肫鹬霸赨buntu Server下配置Rewrite也是啟用了一個叫做“AllowOverride”的屬性為“All”才正確開啟了Rewrite,這次手動配置VirtualHost的時候并沒有寫上這兩句,看來就是這個問題了。
立馬輸入 :
#vim /etc/httpd/conf/httpd.conf
找到自己的VirtualHost設置部分,添上
<Directory />
AllowOverride All
</Directory>
上面這段的Directory /的“/”為你的www路徑,如放在“/var/www/html”路徑下就寫為“<Directory /var/www/html>”,以此類推。保存后重啟httpd服務:
#/etc/init.d/httpd restart
再次進入WordPress,點擊一個鏈接,成了!問題解決??磥磉@個“AllowOverride”很不簡單啊!于是上網找了一圈,發(fā)現這個是控制.htaccess的關鍵點所在。除了需要在Apache中打開Rewrite,以及正確設置.htaccess文件名之外,還需要對目錄的AllowOverride進行配置,因為默認情況下AllowOverride值為None,這樣會完全忽略.htaccess文件。
此外,除了All和None這兩個值之外,AllowOverride還有很多個值,他們的含義分別如下:
AuthConfig
允許使用與認證授權相關的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。
FileInfo
允許使用控制文檔類型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文檔元數據的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。
Indexes
允許使用控制目錄索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。
Limit
允許使用控制主機訪問的指令(Allow, Deny, Order)。
Options[=Option,...]
允許使用控制指定目錄功能的指令(Options和XBitHack)。可以在等號后面附加一個逗號分隔的(無空格的)Options選項列表,用來控制允許Options指令使用哪些選項。
這樣以來,加上All和None,一共是7個可選的值了。看來又增長了不少的見識呀!以后再出現類似問題,不管哪個Linux下,我都能輕松找到問題所在了!
立馬輸入 :
#vim /etc/httpd/conf/httpd.conf
找到自己的VirtualHost設置部分,添上
<Directory />
AllowOverride All
</Directory>
上面這段的Directory /的“/”為你的www路徑,如放在“/var/www/html”路徑下就寫為“<Directory /var/www/html>”,以此類推。保存后重啟httpd服務:
#/etc/init.d/httpd restart
再次進入WordPress,點擊一個鏈接,成了!問題解決??磥磉@個“AllowOverride”很不簡單啊!于是上網找了一圈,發(fā)現這個是控制.htaccess的關鍵點所在。除了需要在Apache中打開Rewrite,以及正確設置.htaccess文件名之外,還需要對目錄的AllowOverride進行配置,因為默認情況下AllowOverride值為None,這樣會完全忽略.htaccess文件。
此外,除了All和None這兩個值之外,AllowOverride還有很多個值,他們的含義分別如下:
AuthConfig
允許使用與認證授權相關的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。
FileInfo
允許使用控制文檔類型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文檔元數據的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。
Indexes
允許使用控制目錄索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。
Limit
允許使用控制主機訪問的指令(Allow, Deny, Order)。
Options[=Option,...]
允許使用控制指定目錄功能的指令(Options和XBitHack)。可以在等號后面附加一個逗號分隔的(無空格的)Options選項列表,用來控制允許Options指令使用哪些選項。
這樣以來,加上All和None,一共是7個可選的值了。看來又增長了不少的見識呀!以后再出現類似問題,不管哪個Linux下,我都能輕松找到問題所在了!
您可能感興趣的文章:
- CentOS 6.6實現永久修改DNS地址的方法
- Centos下IP與DNS設置方法詳解
- 用DNSPod和Squid打造自己的CDN (三) 安裝CentOS Linux
- Centos 6.3將Mysql 5.1.61升級為mysql 5.6.19遇到的問題及解決方式
- CentOS下php使用127.0.0.1不能連接mysql的解決方法
- CentOS安裝pillow報錯的解決方法
- CentOS 7下MySQL服務啟動失敗的快速解決方法
- centos下編譯安裝mysql報錯解決方案
- CentOS下PHP7的編譯安裝及MySQL的支持和一些常見問題的解決辦法
- Centos修改DNS重啟或重啟network服務后丟失問題解決方法
相關文章
Apache Rewrite實現URL的301跳轉和域名跳轉
Rewirte主要的功能就是實現URL的跳轉,它的正則表達式是基于Perl語言??苫诜掌骷壍?httpd.conf)和目錄級的 (.htaccess)兩種方式2012-05-05讓Apache支持Rewrite靜態(tài)頁面重寫的方法
Apache下Rewrite靜態(tài)頁面重寫的方法,需要的朋友可以參考下。2010-07-07Centos6.x服務器配置jdk+tomcat+mysql環(huán)境(jsp+mysql)
這篇文章主要介紹了Centos6.x服務器配置jdk+tomcat+mysql環(huán)境(jsp+mysql),需要的朋友可以參考下2017-09-09Apache Spark 2.0 在作業(yè)完成時卻花費很長時間結束
大家在使用 Apache Spark 2.x 的時候可能會遇到這種現象:雖然我們的 Spark Jobs 已經全部完成了,但是我們的程序卻還在執(zhí)行。怎么回事呢?下面小編通過實例代碼給大家介紹下2019-06-06