Назад | Перейти на главную страницу

302 Редирект на wordpress + nginx с пустой страницей

Моя установка Wordpress MU с Nginx показывает пустую страницу со следующими ошибками и записями журнала доступа.

"GET / HTTP/1.1" **302** 293 "-" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.162 Safari/535.19"
"GET /favicon.ico HTTP/1.1" 200 0 "-" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.162 Safari/535.19"

И на главной странице после включения отладки в wordpress я получаю следующее предупреждение (не уверен, создают ли они проблему)

Notice: Undefined index: HTTPS in /home/optimizebuzz/public_html/wp-content/plugins/wp-super-cache/wp-cache-phase1.php on line 526
Notice: Undefined index: HTTP_X_FORWARDED_PROTO in /home/optimizebuzz/public_html/wp-content/plugins/wp-super-cache/wp-cache-phase1.php on line 526

Вот мои настройки для nginx:

nginx.conf:

user www-data www-data;
worker_processes  2;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

# Keeps the logs free of messages about not being able to bind().
#daemon     off;

events {
        worker_connections  1024;
}

http {
#       rewrite_log on;
        include mime.types;
        default_type       application/octet-stream;
        access_log         /var/log/nginx/access.log;
        sendfile           on;
#       tcp_nopush         on;
        keepalive_timeout  3;
#       tcp_nodelay        on;
#       gzip               on;
        client_max_body_size 25M;
        index              index.php index.html index.htm;

        # Upstream to abstract backend connection(s) for PHP.
        upstream php {
                server unix:/tmp/php-fpm.sock;
        }

        include sites-enabled/*;
}




**--------------------------------**

server {
listen 8080;
server_name *.optimizebuzz.com;
        root /home/optimizebuzz/public_html;

        location ~* ^.+\.(html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$
        {
                root /home/optimizebuzz/public_html;
                rewrite ^/.*(/wp-.*/.*\.(html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js))$ $1 last;
                rewrite ^.*/files/(.*(html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js))$
                /wp-content/blogs.php?file=$1 last;
                expires 30d;
                break;
        }
error_page 404 = /index.php?q=$uri;
        include global/wp-supercache.conf;
        include global/restrictions.conf;
        include global/wordpress.conf;
}

Кажется, первая строка отладки указывает на проблему. Похоже, что плагин "wp-super-cache" работает некорректно. Поскольку у вас не установлен Wordpress по умолчанию, вам нечего делать, пока вы не вернете его в исходное состояние по умолчанию.

Отключите этот плагин, затем очистите кеш браузера (или используйте другой браузер) и попробуйте снова перейти на свой сайт. Обратите внимание, что переадресация 302 сильно кэшируется всеми браузерами, поэтому посещение сайта и получение 302 означает, что вы на какое-то время переадресовываете, даже если 302 на действующем сайте уже нет.

Это похоже на неправильную обработку заголовков в wp-super-cache; Я заметил, что это могло быть обновлено в будущих обновлениях (патч); вы пробовали обновить wp-super-cache?