簡體   English   中英

Mod_Rewrite問題

[英]Mod_Rewrite Question

我正在嘗試將example.com/signup和example.com/signup/(帶有斜杠)轉發到example.com/signup.php

我在.htaccess中寫了以下內容,它適用於example.com/signup/,但不能在沒有斜杠的情況下工作...如何解決該問題?

RewriteEngine On
RewriteRule ^question/(.*)-(.*) /question.php?qid=$1
RewriteRule ^signup/ /signup.php
RewriteEngine On
RewriteRule ^signup/?$ /signup.php

問號使斜杠為可選項,美元符號表示行尾,因此無法跟隨。 您可以根據需要刪除$

您還可以在URL的末尾允許任意查詢字符串,例如:

RewriteRule ^signup/?(\?.*)?$ /signup.php$1

這樣一來,您便可以將所有查詢參數傳遞給PHP腳本。 例如,URL http://www.example.com/signup?destination=/front-page將被重定向到http://www.example.com/signup.php?destination=/front-page

使斜杠為可選的? 量詞:

RewriteRule ^signup/?$ /signup.php

但我建議您只使用一種表示法,然后將另一種表示法重定向。

在斜杠后加問號

RewriteRule ^signup/? /signup.php

=正則表達式匹配中的可選單個字符

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM