我在 .htaccess 檔案中有以下重定向:
RewriteRule ^tasks/(\w )/?$ /projects.php?task=$1
如果我試圖訪問像 /tasks/nov-1 這樣的 smth,它會說找不到物件,因為 \w 不接受“-”。你能幫忙在上面的示例重定向規則中添加“-”嗎?
uj5u.com熱心網友回復:
您可以使用此規則來接受連字符,并且建議在此規則中使用正確的標志:
RewriteRule ^tasks/([\w-] )/?$ projects.php?task=$1 [L,QSA,NC]
標志是:
L用于最后一條規則QSA用于查詢字串追加NC用于忽略大小寫
請注意,L標志標記了當前回圈迭代的最后一條規則mod_rewrite。它的行為就像continue在while回圈中而不是在回圈中,break因此它不會立即結束回圈。如果請求已經被重寫,重寫程序將再次開始。因此,其他規則可能會在帶有L標志的規則之后應用。
在 Apache 上2.4有一個END標志,它的作用類似于break并立即停止完整的重寫程序。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/347731.html
