


解決CentOS下.htaccess不起作用
PHP 5.2的問題解決后,現在就是安裝WordPress了。裝好了沒有任何問題,接下來繼續配置WordPress,開啟靜態URL鏈接。然后手動編輯了.htaccess文件,將WordPress生成的相關代碼拷貝進去了。
結果點擊一個鏈接直接404 Not Found。悲劇,看來Apache的Rewrite部分有問題了,完全無視掉了.htaccess文件!經過檢查Apache的模塊,發現Rewrite模塊是開啟的狀態,看來是httpd.conf文件中的配置有點問題了。回想起之前在Ubuntu 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”很不簡單啊!于是上網找了一圈,發現這個是控制.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
允許使用控制目錄索引的指令(AddDeion, 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,htaccess
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解