我的网站出现问题,在主页上它正常工作但是当我访问内部页面时它返回302 Found并继续重定向,我在inspector元素中使用了日志。在Chrome中它正在工作,但是在ie11和firefox中它继续重定向。
这是我的htaccess:
RewriteEngine On
#
# Full path to your site
#
# RewriteBase /
#
# Rules
#
#RewriteCond %{HTTPS} off
#RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
#RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
#RewriteCond %{HTTPS} on
#RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
#RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?do=$1
ErrorDocument 404 /error
你可以查看这个链接,看看我在说什么。 http://mst.com.ph然后尝试:http://mst.com.ph/category/motoring/
答案 0 :(得分:2)
检查完您的网页后,/motoring/category
会以302 Moved Temporarily
标头发送。但该位置是空的。我假设您尝试加载的php页面中包含header( ... )
,并且包含新位置的变量为空或NULL。除此之外,请求不会以exit()
终止,因此无论如何都会显示内容。 Chrome决定忽略状态代码,并在其后显示您发送的任何内容,而其他浏览器显然决定重定向到同一页面。在任何情况下,使用302状态代码提供页面都没有意义。
这不是你的.htaccess的问题。在您的脚本中,确保变量包含您认为应包含的内容。 (例如var_dump(..)
)。同时在标头后面添加exit()
定义重定向。