将 www.site.com/feeds 重定向至 www.site.com/Layouts/feeds.html,保持 URL 完整?

将 www.site.com/feeds 重定向至 www.site.com/Layouts/feeds.html,保持 URL 完整?

假设用户访问www.site.com/feeds。它必须显示www.site.com/Layouts/feeds.html,并保持 URL 完整。如何使用 .htaccess 做到这一点?

失败

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.site\.com/feeds$ [NC]
RewriteRule ^(.*)$ http://www.site.com/Layouts/feeds.html [R=301,L]

出现 404 错误?![我已就此问题联系了管理员,其次,可能是系统问题]

RewriteEngine On
RewriteRule ^/feeds$ index.html [P]

答案1

因为它是一个 htaccess 文件,所以上下文路径被剥离;删除前导斜杠。

RewriteRule ^feeds$ Layouts/feeds.html [L]

答案2

如果您想“保持 URL 完整”,那么您就不会发出重定向,根据定义——重定向是向 Web 浏览器发出的指令“请去请求此其他页面”。

相反,您需要的是 Proxy 标志RewriteRule,类似于:

RewriteRule ^/feeds$ http://www.site.com/Layout/Feeds.html [P]

相关内容