apache - 需要在 .htaccess 文件中重定向 301 一个 URL,但它添加了额外的 http//?
问题描述
我正在尝试将 /abc.html 重定向到 /abc.php但是当我这样做时,它会提供一个额外的 http//并且页面无法像http//www.example.de/abc.php那样工作不知道从哪里来HTTP 来了。
注意:网站没有 ssl,所以域名是http://example.de
我的 .htaccess 文件
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.
RewriteRule ^(.*)$ http://example.de/$1 [R=301,L]
RedirectPermanent /tour.html /tour.php
解决方案
使用您显示的示例/尝试,您能否尝试以下操作。请确保在测试您的 URL 之前清除您的浏览器缓存。
RewriteEngine ON
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [NE,R=301,L]
##To serve home page link.
RewriteRule ^/?$ index.php [L]
RewriteCond %{REQUEST_URI} !^/?$
RewriteRule ^([^.]*)\.html/?$ $1.php [NC,L]