簡體   English   中英

需要幫助使用htaccess重寫URL

[英]need help rewriting URL with htaccess

我正在嘗試發送如下查詢:

example.org/search?q=search+query

search.pl?q=search+query

以及對index.php的所有其他請求,這就是我的htaccess的樣子(不起作用)

RewriteEngine on
RewriteRule ^search\?q\=(.*)$ /cgi-bin/search.pl?q=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

由於某種原因,這使我進入了索引。

查詢字符串不是RewriteRule中評估的內容的一部分,因此您需要像這樣在RewriteRule中的匹配條件中將其刪除:

RewriteRule ^/?search$ /cgi-bin/search.pl [L,QSA]

注意,您不需要在重定向中使用向后引用( $1 ),因為QSA標志會將現有查詢字符串原樣追加到URI。

暫無
暫無

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

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