301 静态 HTML 重定向到动态 PHP 页面
升级我们的网站后,人们在博客等中拥有的许多旧链接现在都转到我们的 404 错误页面。
一个例子是:(使用 h#pb/c 我是新用户,无法发布链接)
h#p://www.site.com/pressreleases/some_release.html
h#p://www.site.com/pressreleases/another_release.html
这些项目现在是数据库驱动站点的一部分,并将位于此处:
h#p://www.site.com/pressreleases/details.php?id=1
h#p://www.site.com/pressreleases/details.php?id=2
How can I set up the 301 to redirect
h#p://www.site.com/pressreleases/some_release.html
到
h#p://www.site.com/pressreleases/details.php?id=1
和
h#p://www.site.com/pressreleases/another_release.html
到
h#p://www.site.com/pressreleases/details.php?id=2
?
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在
pressreleases
目录中编写一个.htaccess
文件并指定以下内容:如果您想使用正则表达式进行重定向,请使用
mod_rewrite
为 此处解释。此页面列出了各种选项。
Compose a
.htaccess
file in thepressreleases
directory and specify the following:If you would like to redirect using regular expressions, use
mod_rewrite
as explained here.There are various options listed on this page.
如果您有很多这样的 URL,并且假设您有权访问 Apache 配置,请考虑在 /etc/apache2(或任何其他地方)中创建一个“redirects.inc”文件,然后添加“include /etc/apache2/redirects.inc”文件。 inc”到您的虚拟主机。这样您就可以在一个地方添加/更新您的重定向。
If you have a lot of these URLs, and assuming you have access to the Apache config, consider creating a "redirects.inc" file in /etc/apache2 (or anywhere really) and then adding "include /etc/apache2/redirects.inc" to your virtual host. That way you have one place to add/update your redirects.