3

嘿各位程序员!

好吧,我敢肯定真的微不足道,但我无法解决这个问题。

基本上(未登录时)并请求浏览器返回的没有斜杠的页面

“重定向循环”

错误或在 Firefox 中是一个替代错误,但类似。

Firefox 检测到服务器正在以永远不会完成的方式重定向对该地址的请求。此问题有时可能是由禁用或拒绝接受 cookie 引起的。

有趣的是...当您进行简单的刷新时,它会很好地加载,然后缓存 301 以便之后工作。

好的,这是响应标头:

http://www.theurl.com/attitude-competition

HTTP/1.1 301 永久移动日期:2013 年 10 月 28 日星期一 23:05:28 GMT 服务器:Apache/2.2.14 (Ubuntu) X-Powered-By:PHP/5.3.2-1ubuntu4.20 X-Pingback:http: //www.theurl.com/xmlrpc.php位置: http ://www.theurl.com/attitude-competition/ Vary: Accept-Encoding Content-Length: 0 Content-Type: text/html; 字符集=UTF-8

http://www.theurl.com/attitude-competition/

HTTP/1.1 200 OK 日期:2013 年 10 月 28 日星期一 23:05:30 GMT 服务器:Apache/2.2.14 (Ubuntu) X-Powered-By:PHP/5.3.2-1ubuntu4.20 X-Pingback: http:// /www.theurl.com/xmlrpc.php链接:;rel=shortlink 变化:Accept-Encoding Transfer-Encoding:chunked Content-Type:text/html;字符集=UTF-8

对我来说一切看起来都不错,但是我已经在不同的浏览器中进行了测试,但每次都失败了。

编辑

我做了一些进一步的研究,这里是以管理员身份登录时没有相同问题的标题。

HTTP/1.1 301 永久移动日期:2013 年 10 月 29 日星期二 00:03:20 GMT 服务器:Apache/2.2.14 (Ubuntu) X-Powered-By:PHP/5.3.2-1ubuntu4.20 X-Pingback:http: //www.theurl.com/xmlrpc.php过期时间:星期三,1984 年 1 月 11 日 05:00:00 GMT 缓存控制:无缓存,必须重新验证,最大年龄 = 0 编译:无缓存位置:http: //www.theurl.com/attitude-competition/ 变化:Accept-Encoding Content-Encoding:gzip Content-Length:20 Keep-Alive:timeout=15 Connection:Keep-Alive Content-Type:text/html;字符集=UTF-8

编辑 2

更奇怪的是,当 Chromes Web Inspector 打开时,它工作正常。无法缓存,因为我尝试过隐身浏览器和其他浏览器。

有什么想法吗?

4

2 回答 2

1
# Force Trailing Slash - Beau Bhavik Code START
<IfModule rewrite_module>
  RewriteEngine On
  RewriteBase /

  # If not a real file or directory.
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d

  # Not a part of the WP admin area.
  RewriteCond %{REQUEST_URI} !(?:^|/)wp\-admin(?:/|$)

  # If there is no trailing slash.
  RewriteCond %{REQUEST_URI} !(?:.*)/$

  # Force a trailing slash on all virtual requests.
  RewriteRule ^(.*)$ /$1/ [QSA,L,R=301]
</IfModule>
# Force Trailing Slash - Beau Bhavik Code END

# Force NO Trailing Slash - Beau Bhavik Code START
<IfModule rewrite_module>
  RewriteEngine On
  RewriteBase /

  # If not a real file or directory.
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d

  # Not a part of the WP admin area.
  RewriteCond %{REQUEST_URI} !(?:^|/)wp\-admin(?:/|$)

  # If there is a trailing slash.
  RewriteCond %{REQUEST_URI} (?:.*)/$

  # Force NO trailing slash on all virtual requests.
  RewriteRule ^(.*)/$ /$1 [QSA,L,R=301]
</IfModule>
# Force NO Trailing Slash - Beau Bhavik Code END
于 2021-02-25T09:36:24.220 回答
0

我会检查您的服务器是否没有任何冲突的规则(例如 .htaccess 或 nginx 规则),基本上其中一个正在尝试纠正另一个,因此是无限循环。

我还要确保你的重写规则没问题——你对永久链接做过什么时髦的事情吗?快速调试的方法是关闭永久链接或将规则更改为不同的。可以提供一些线索

于 2014-04-19T00:39:49.540 回答