我目前有多个 URL,或者更准确地说是一个带有查询字符串的 URL,我都希望将其读取为同一个 URL。
- /example/url/index.php?foo=A&bar=B
- /example/url/index.php?foo=C&bar=D
- /example/url/index.php?foo=E&bar=F
我希望这些都重写为单个 URL
重写到 www.site.com/singlepage
这可能吗?
我目前有多个 URL,或者更准确地说是一个带有查询字符串的 URL,我都希望将其读取为同一个 URL。
我希望这些都重写为单个 URL
重写到 www.site.com/singlepage
这可能吗?
RewriteEngine on
RewriteRule ^/example/url/index.php(.*)$ http://www.site.com/simglepage [R]
这是一个很好的网站,描述了 URL 重写的工作原理
如果我正确理解您的问题,您希望将所有这些 URL 从外部重定向到单个 URL。通过启用 mod_rewrite 和 .htaccess httpd.conf
,然后将此代码放在您.htaccess
的DOCUMENT_ROOT
目录下:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+/example/url/index\.php\?foo=[^&]*&bar= [NC]
RewriteRule ^ singlepage? [R=302,L]
验证一切正常后,您可以替换R=302
为R=301
(永久重定向)。
对的,这是可能的!在您的.htaccess
文件中,使用以下代码:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^singlepage$ /example/url/index.php [QSA]