我正在尝试使用.htaccess文件和以下代码删除主站点上的尾随index.php ....
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.(html?|php[45]?|[aj]spx?)\ HTTPS/
RewriteRule index\.(html?|php[45]?|[aj]spx?)$ https://www.gekkodev.com/%1 [R=301,L]
但当然它还没有用!我认为问题是我的ssl证书,因为该代码在许多其他网站上运行良好
任何想法都会被大大接受! 非常感谢。
答案 0 :(得分:3)
您的RewriteCond
采取了完全错误的做法。 HTTPS请求只是包含在SSL / TLS安全性中的HTTP请求 - 它将不在请求行中包含字符串HTTPS
,这是您要检查的内容。
如果您希望规则仅适用于HTTPS请求,请使用%{HTTPS}
变量,listed in the documenation:
RewriteCond %{HTTPS} on
(我最近看到很多重写规则测试%{THE_REQUEST}
,我不知道为什么,因为它应该只是作为最后的手段而没有别的办法可以使用。)
答案 1 :(得分:0)
排序这就是我的表现!
RewriteEngine on
RewriteCond %{HTTPS} on
RewriteRule index\.(html?|php[45]?|[aj]spx?)$ https://www.gekkodev.com/%1 [R=301,L]
干杯IMSoP