现在打开site.com/sdfsdfsdf重定向到 site.com/404/ 并显示 error_page。如何删除此重定向并保留 URL 相同 ( /sdfsdfsdf ) 但仍显示error_page模板。
我在 .htaccess 中没有找到任何规则:
RewriteEngine On
RewriteBase /
# http -> https
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} !^/robots.txt$
RewriteCond %{REQUEST_URI} !^/r.php
RewriteRule .* https://domain.ru%{REQUEST_URI} [R=301,L]
# Rewrite www.domain.com -> domain.com -- used with SEO Strict URLs plugin
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^domain\.ru [NC]
RewriteRule (.*) https://domain.ru/$1 [R=301,L]
RewriteCond %{REQUEST_URI} ^/robots.txt$
RewriteRule ^(.*)$ r.php [L,QSA]
# The Friendly URLs part
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
在站点的系统设置中指定了正确的资源 ID error_page
一般来说,问题出在 TrailingSlash 插件中。如果末尾没有斜杠,它会错误地处理不存在的 URL,将用户重定向到资源 37(这正是设置中的 404 页面)。通过添加 404 检查来修改插件