Dot-Htaccess

Apache 域重定向和重寫查詢字元串

  • November 17, 2016

我的 Apache 伺服器將以這種格式接收來自使用者的傳入請求: http://192.168.1.182/SEARCH=searchstring&URL=http://test.com/blahblahblah

我想將使用者重定向到另一個域,但保留搜尋字元串並將其添加到新 URL 的末尾。

例子: https://newdomain.com/#q=searchstring

做這個的最好方式是什麼?

我閱讀了 Apache Docs on Redirecting and Remapping with mod_rewrite 並嘗試了各種範例,但無法正常工作。

就像這樣(如果你的 URL 參數總是在 SEARCH 參數之後)

RewriteEngine On
RewriteCond %{QUERY_STRING} SEARCH=(.*?)&URL= [NC]
RewriteRule . https://newdomain.com/#q=%1 [R=301,L]

NC我添加了不區分大小寫的標誌,就像它與SEARCH=andsearch=

如果您的 URL 參數可能不存在:

RewriteEngine On
RewriteCond %{QUERY_STRING} SEARCH=([^&]*) [NC]
RewriteRule .* https://newdomain.com/#q=%1 [R=301,L]

要啟用.htaccess,您必須添加AllowOverride All到您的 web 文件夾,並啟用 mod_rewrite(終端命令a2enmod rewrite:)

引用自:https://serverfault.com/questions/741558