簡體   English   中英

如何刪除? 從網址使用htaccess

[英]How to remove ? from the url using htaccess

我有一個網址http://www.domain.com/postname/?a_different_world

我需要將其更改為http://www.domain.com/postname/a_different_world

如何刪除? 使用Htacccess(Wordpress)從URL中獲取

我使用以下htaccess代碼。 但這不起作用

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php-$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /domain.com/index.php [L]
RewriteRule ^/postname/([0-9]+)$ /? $1 [L,QSA] 

規則匹配字符串會去除查詢字符串(?之后的所有內容)。 因此,您想刪除? 並顯式使用這樣的查詢字符串(而不是最后一條規則)

RewriteCond %{QUERY_STRING} ^([\w\-]+)$
RewriteRule ^postname/$ postname/%1?   [L]

請注意,您應該刪除前導/,因為它不會匹配,因為.htaccess規則匹配字符串會刪除前導/;。 還注意了嗎? 在QSA標志的替換模式和不作為,你不想追加查詢字符串。

另外,請將此規則移至上一個條件/規則上方,因為第二個規則將在您的郵遞姓名模式上觸發,因此除非您將其上移一個,否則您永遠不會使用此規則。

暫無
暫無

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

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