0

我刚刚从 latest.tar.gz 文件中安装了一个全新的 wordpress 3.5.1 实例。

安装目录为:

/home/wordpress

数据库访问正常。该站点在 url doc.site.com 上正确显示

当我尝试通过 doc.site.com/wp-login.php 访问并输入我的管理员凭据时,wordpress 会不断循环回到 wp-login.php 而没有任何错误。

我在端口 80 和 php-fpm 上使用 Nginx、Varnish。

我不确定什么是合适的重写规则。我还验证了 wordpress 数据库中的 home 和 siteurl,值是http://doc.site.com

这是我的“可用站点”文件的副本:

    server {
        listen 8080;
        server_name doc.site.com;
        access_log /var/log/nginx/doc.site.com.access.log;
        error_log /var/log/nginx//doc.site.com.error.log;

        root /home/wordpress;

        index index.php index.html index.htm;


        # unless the request is for a valid file, send to bootstrap
        if (!-e $request_filename)
        {
            rewrite ^(.+)$ /index.php?q=$1 last;
        }

        # catch all
        error_page 404 /index.php;

        # use fastcgi for all php files
        location ~ \.php$
        {
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME /home/wordpress$fastcgi_script_name;
            include fastcgi_params;
        }

    }
4

1 回答 1

0

nginx 应该支持开箱即用的 Wordpress,除了短 urls/slugs,它需要将指令添加到站点的serverlocation块中。

您的设置和我的设置之间的唯一区别是您使用 Varnish 来加速您的应用程序。如果您尝试关闭它会发生什么?

如果您让站点在端口 80 上侦听会发生什么?

最后,/var/log/nginx//doc.site.com.error.log当您通过以下方式登录时,错误日志会说什么wp-admin.php

tail -F /var/log/nginx/doc.site.com.error.log
于 2013-03-19T15:54:50.327 回答