.htaccess配置错误导致OpenCart站点URL路径异常截断重定向求助
异常重定向问题排查步骤
- 优先清理浏览器缓存,使用无痕模式测试
301重定向会被浏览器永久缓存,很多时候配置修改后未生效都是之前的缓存导致的,先排除该干扰项。 - 核对OpenCart核心配置文件
打开站点根目录下的config.php与admin/config.php,确认以下配置项取值正确:
// HTTP 访问地址 define('HTTP_SERVER', 'https://example.com/'); // HTTPS 访问地址 define('HTTPS_SERVER', 'https://example.com/');
注意域名末尾必须携带斜杠,若此处漏写域名、配置值不完整,就会出现路径被错误拼接到域名位置的异常跳转。
- 修正.htaccess 冗余配置
你当前的.htaccess中重复声明了两次RewriteEngine On,可删除SEO URL设置模块上方重复的声明行,避免规则冲突。同时可以调整现有www跳转规则为以下格式,避免路径拼接异常:
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ https://%1%{REQUEST_URI} [R=302,L,NE]
确认跳转正常后再将302改为301,避免错误规则被浏览器永久缓存。
- 排查SEO URL配置
登录OpenCart后台,进入【系统设置】-【服务器】,确认SEO URL功能配置正确,再进入【营销】-【SEO URL】检查自定义跳转规则,是否存在错误匹配规则把something路径指向异常地址。 - 检查Apache 服务端配置
若以上步骤都无法解决问题,需要检查站点对应的Apache虚拟主机配置,确认是否存在其他全局重定向规则导致路径被错误解析。
内容的提问来源于stack exchange,提问作者Cristina
相关产品推荐
相关产品推荐

