htaccess 正在运行,但不会取代 url
htaccess is working but does not replace the url
我正在尝试修改 URL 中的子域名,使其看起来更漂亮。我当前的 URL 看起来像:
www.mystore.com/productInfo.php?cPath=11_11&productID=222
所以,我想通过重写 main 中的 .htaccess 代码使其变得更好:
RewriteEngine On
RewriteRule ^productInfo/([0-9_-]+)/([0-9_-]+) productInfo.php?cPath=&productID= [NC,L]
当我 运行 并通过在 URL 中键入 www.mystore.com/productInfo/11_11/222
在 URL 上测试它时,效果很好。然而,当这个页面被不同的页面重定向或者是 'refreshed' 与自我重定向 a href=
link(其中 link 被写在 php 中以前的程序员),上面的旧 link 在 URL 中仍然可见,而不是新的。
我仍然是初学者,我怀疑我可能需要为此更改 cPanel/Apache(我认为)中的某些内容,但目前,我仍然无法访问 cPanel 控件。在 .htaccess 文件中是否有我可能遗漏的内容,或者我确实需要 cPanel 控件或任何其他原因?
感谢任何帮助。抱歉,我找不到类似的问题。
您可以使用以下内容:
RewriteEngine On
RewriteBase /
#redirect /productInfo.php?cPath=foo&productID=bar to /productInfo/foo/bar
RewriteCond %{THE_REQUEST} /productInfo\.php\?cPath=([0-9_-]+)&productID=([0-9_-]) [NC]
RewriteRule ^ productInfo/%1/%2? [L,R=301]
#rewrite new URL to the old one
RewriteRule ^productInfo/([0-9_-]+)/([0-9_-]+) productInfo.php?cPath=&productID= [NC,L]
我正在尝试修改 URL 中的子域名,使其看起来更漂亮。我当前的 URL 看起来像:
www.mystore.com/productInfo.php?cPath=11_11&productID=222
所以,我想通过重写 main 中的 .htaccess 代码使其变得更好:
RewriteEngine On
RewriteRule ^productInfo/([0-9_-]+)/([0-9_-]+) productInfo.php?cPath=&productID= [NC,L]
当我 运行 并通过在 URL 中键入 www.mystore.com/productInfo/11_11/222
在 URL 上测试它时,效果很好。然而,当这个页面被不同的页面重定向或者是 'refreshed' 与自我重定向 a href=
link(其中 link 被写在 php 中以前的程序员),上面的旧 link 在 URL 中仍然可见,而不是新的。
我仍然是初学者,我怀疑我可能需要为此更改 cPanel/Apache(我认为)中的某些内容,但目前,我仍然无法访问 cPanel 控件。在 .htaccess 文件中是否有我可能遗漏的内容,或者我确实需要 cPanel 控件或任何其他原因?
感谢任何帮助。抱歉,我找不到类似的问题。
您可以使用以下内容:
RewriteEngine On
RewriteBase /
#redirect /productInfo.php?cPath=foo&productID=bar to /productInfo/foo/bar
RewriteCond %{THE_REQUEST} /productInfo\.php\?cPath=([0-9_-]+)&productID=([0-9_-]) [NC]
RewriteRule ^ productInfo/%1/%2? [L,R=301]
#rewrite new URL to the old one
RewriteRule ^productInfo/([0-9_-]+)/([0-9_-]+) productInfo.php?cPath=&productID= [NC,L]