php.ini 302,302使用nginx和WordPress重定向循环

我一直在Serverfault中搜索几个小时试图解决这个问题,但我找不到解决方案.会发生什么:

我在我的网站中使用wget进行了302重定向循环,但没有使用浏览器.在我的nginx配置中,我只有两个301重定向,而不是302.我试图从wordpress禁用所有插件,没有运气.

可能导致问题的原因是什么?下面是我的nginx配置. wget的一些例子:

wget elbauldelprogramador.com

--2014-10-30 13:10:24-- http://elbauldelprogramador.com/

Resolving elbauldelprogramador.com (elbauldelprogramador.com)...

Connecting to elbauldelprogramador.com (elbauldelprogramador.com)||:80... connected.

HTTP request sent, awaiting response... 302 Moved Temporarily

Location: 404 [following]

--2014-10-30 13:10:25-- http://elbauldelprogramador.com/404

Reusing existing connection to elbauldelprogramador.com:80.

HTTP request sent, awaiting response... 302 Moved Temporarily

Location: 404 [following]

--2014-10-30 13:10:25-- http://elbauldelprogramador.com/404

Reusing existing connection to elbauldelprogramador.com:80.

[...]

HTTP request sent, awaiting response... 302 Moved Temporarily

Location: 404 [following]

20 redirections exceeded.

以及服务器中的日志:

S.IP - - [30/Oct/2014:13:11:22 +0100] "GET /404 HTTP/1.1" 302 154 "-" "Wget/1.15 (linux-gnu)"

S.IP - - [30/Oct/2014:13:11:22 +0100] "GET /404 HTTP/1.1" 302 154 "-" "Wget/1.15 (linux-gnu)"

S.IP - - [30/Oct/2014:13:11:22 +0100] "GET /404 HTTP/1.1" 302 154 "-" "Wget/1.15 (linux-gnu)"

Nginx配置

server {

#listen 127.0.0.1:81;

listen 80;

server_name www.example.com;

return 301 $scheme://example.com$request_uri;

}

server {

# listen 127.0.0.1:81;

listen 80;

server_name example.com

port_in_redirect off;

server_tokens off;

autoindex off;

root /path;

## Page Speed Module ##

include global/pagespeed.conf;

## Fastcgi cache start ##

set $no_cache 0;

# POST requests and urls with a query string should always go to PHP

if ($request_method = POST) {

set $no_cache 1;

}

if ($query_string != "") {

set $no_cache 1;

}

# Don't cache uris containing the following segments

if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml)") {

set $no_cache 1;

}

# Don't use the cache for logged in users or recent commenters

if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in") {

set $no_cache 1;

}

# Deliver 404 instead of 403 "Forbidden"

error_page 403 = 404;

include global/restrictions.conf;

include global/caching.conf;

# Additional rules go here.

access_log log/access.log;

error_log log/error.log warn;

rewrite ^/sitemap_index\.xml$/index.php?sitemap=1 last;

rewrite ^/([^/]+?)-sitemap([0-9]+)?\.xml$/index.php?sitemap=$1&sitemap_n=$2 last;

location = /p/guia-de-desarrollo-android.html {

rewrite /p/guia-de-desarrollo-android.html http://example.com/curso-programacion-android/ permanent;

}

location = /p/bases-de-datos.html {

rewrite /p/bases-de-datos.html http://example.com/bases-de-datos/ permanent;

}

location = /feeds/posts/default {

rewrite /feeds/posts/default http://example.com/feed permanent;

}

location = /p/guias-gratuitas.html {

rewrite /p/guias-gratuitas.html http://example.com/manuales-gratuitos/ permanent;

}

# Only include one of the files below.

include global/wordpress.conf;

include global/security.conf;

}

include global / wordpress.conf;

#WordPress single blog rules.

# Designed to be included in any server {} block.

#A little something from the Search Overload blog entry

location = /search {

limit_req zone=wpsearch burst=3 nodelay;

try_files $uri /index.php;

}

location / {

try_files $uri $uri/ /index.php;

}

# Directives to send expires headers and turn off 404 error logging.

location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)${

access_log off; log_not_found off; expires max;

}

# Pass all .php files onto a php-fpm/php-fcgi server.

location ~ \.php${

# Zero-day exploit defense.

# http://forum.nginx.org/read.php?2,88845,page=3

# Won't work properly (404 error) if the file is not stored on this server, which is entirely possible with php-fpm/php-fcgi.

# Comment the 'try_files' line out if you set up php-fpm/php-fcgi on another machine. And then cross your fingers that you won't get hacked.

try_files $uri =404;

fastcgi_split_path_info ^(.+\.php)(/.+)$;

#NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

include fastcgi_params;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_pass php;

##

# Fastcgi cache

##

fastcgi_cache_bypass $no_cache;

fastcgi_no_cache $no_cache;

fastcgi_cache microcache;

fastcgi_cache_valid 60m;

}

提前致谢.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值