[英]Can't figure out what is wrong with my .htaccess RewriteRule statement
我不知道如何正確使用.htaccess
文件,那里的所有指南和教程都不是最容易理解的。
這是我當前的代碼...
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/([^/]+)/([^/]+)/([^/]+)$ productpage.php?productidpage=$1&brand=$2&productname=$3 [L,NC]
我希望它顯示為www.mysite.com/$1/$2/$3/
每當productpage.php
被加載。
好吧,實際上,我希望它能顯示為www.mysite.com/$2/$3
。
productidpage
變量是代碼中加載頁面的代碼, $2
和$3
只是為了修改URL而已。
嘗試刪除正則表達式中的前導斜杠。 當規則位於htaccess文件中時,與RewriteRule
的表達式匹配時,將刪除URI中的前導斜杠。
# no slash---v maybe a slash here---v
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ productpage.php?productidpage=$1&brand=$2&productname=$3 [L,NC]
確保為包含您的.htaccess
文件的<Directory>
設置了AllowOverride FileInfo
或( AllowOverride All
)。
然后在服務器或虛擬主機級別上設置RewriteLog
和RewriteLogLevel
以調試重寫規則。
更新:我強烈建議您查看Ask Apache-它包含大量的mod_rewrite
信息和示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.