1
我對我的博客有以下規則設置,它們似乎工作得很好。htaccess URL重寫不符合第一條規則
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/(index\.php|(modules|css|files|fonts|ico|img|js)/)
RewriteRule ^([^/]*)/page/([^/]*)$ /framework/?p=$1&page=$2 [L]
RewriteRule ^([^/]*)/search/([^/]*)$ /framework/?p=$1&search=$2 [L]
RewriteRule ^([^/]*)/search/([^/]*)/page/([^/]*)$ /framework/?p=$1&search=$2&page=$3 [L]
所以我感到自信,並希望爲基本頁面添加一條規則。
,所以我說這個規則
RewriteRule ^([^/]*)$ /framework/?p=$1 [L]
,使我的htaccess的文件現在看起來是這樣
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/(index\.php|(modules|css|files|fonts|ico|img|js)/)
RewriteRule ^([^/]*)$ /framework/?p=$1 [L]
RewriteRule ^([^/]*)/page/([^/]*)$ /framework/?p=$1&page=$2 [L]
RewriteRule ^([^/]*)/search/([^/]*)$ /framework/?p=$1&search=$2 [L]
RewriteRule ^([^/]*)/search/([^/]*)/page/([^/]*)$ /framework/?p=$1&search=$2&page=$3 [L]
但如果我去http://www.example.com/framework/blog
我得到了500 Internal Server Error
,如果我拿出線去http://www.example.com/framework/blog/page/2
它加載我的第二頁沒有任何問題。
我不知道我在做什麼錯?任何意見,將不勝感激。
可能是$ 1位找不到嘗試重寫規則^([^ /] *)$ /框架/ [L] –
我不能肯定我理解你的思路。如果它的規則沒有'?p = $ 1',現在它會如何'p = blog' |添加了你建議的這一行,但仍然出現了'500'錯誤。 –
需要添加這兩行'RewriteCond%{REQUEST_FILENAME}!-f'和'RewriteCond%{REQUEST_FILENAME}!-d' –