当前位置:论坛首页 > Linux面板 > 求助

网站重定向HTTPS后无法完全伪静态

发表在 Linux面板2017-12-19 08:58 [复制链接] 4 2750

网站在没有把http重定向https时,访问http或者https 都能正常伪静态
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
RewriteRule ^system/download/(.*) index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
当把http重定向https时,伪静态的网址中间都会多出“ index.php?_route_=“ 这一段,例如https://www.abcd.com/index.php?_route_=test.html.正常应该是https://www.abcd.com/test.html。没有index.php?_route_=这一段。以下是重定向https的代码,大家帮忙看看应该怎么改,万分感谢!
RewriteCond %{http_host} ^abcd.com$ [NC]
RewriteRule ^(.*)$ https://www.abcd.com/$1 [R=301,L]
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]

使用道具 举报 只看该作者 回复
发表于 2017-12-19 09:04:11 | 显示全部楼层
Apache环境。
使用道具 举报 回复 支持 反对
发表于 2017-12-19 10:58:15 | 显示全部楼层
将重定向代码放到RewriteBase下面,不要放到尾部
使用道具 举报 回复 支持 反对
发表于 2017-12-19 14:24:29 | 显示全部楼层
良哥 发表于 2017-12-19 10:58
将重定向代码放到RewriteBase下面,不要放到尾部

非常感谢良哥,问题解决!
使用道具 举报 回复 支持 反对
发表于 2017-12-19 14:30:13 | 显示全部楼层
良哥 发表于 2017-12-19 10:58
将重定向代码放到RewriteBase下面,不要放到尾部

请你一瓶高档红牛
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急问题处理

论坛响应时间:10分钟

问题处理方式:1对1处理(优先)

工作时间:白班:9:00 - 18:00

工作时间:晚班:18:00 - 24:00

立即付费处理

工作时间:09:00至24:00

快速回复 返回顶部 返回列表