1. 程式人生 > >mod_rewrite,rewrite_module兩種方式均不成功

mod_rewrite,rewrite_module兩種方式均不成功

由於httpd沒有在編譯時把重寫模組編譯進去 ,因此為了配置 重寫規則,先通過

# /usr/local/apache/bin/apxs -c mod_rewrite.c //apxs應指定絕對路徑,在你當前正在使用apache的bin目錄裡 
# /usr/local/apache/bin/apxs -i -a -n mod_rewrite mod_rewrite.la 

-a表示自動在你的httpd配置檔案中使用重新模組。

因為是動態載入,所以,我們/usr/local/apache/bin/httpd -l 發現根本木有 mod_rewrite.c,因此下規則的時候不能使用

<if Module mod_rewrite.c>這種方式 ,因此使用下面的方式。

<If Module rewrite_module>

但是很悲劇的是 ,上面那個語句判斷應該已久是 沒有為TRUE,因此,mode_rewrite還是沒有配置對。而且很詭異的是,我們寫一個phpinfo發現 ,mod_rewire模組是load了的。沒有辦法,只有通過一下方式解決咯。

<Directory />

    Options Includes FollowSymLinks
    AllowOverride All
#<IfModule rewrite_module>
   RewriteBase /
   RewriteEngine on
#RewriteLogLevel 9
#RewriteLog logs/rewrite.log
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule ^(.*)$ /index.php?/$1 [L]
#</IfModule>


 </Directory>