Nginx + Wordpress + Rails以wp作为子目录

时间:2013-02-14 22:00:44

标签: ruby-on-rails-3 wordpress nginx

我的环境几乎正常,但固定链接和图像无法正常工作。

我的网站部署在/ var / www / staging-site / current / public; 我的Wordpress博客部署在/ var / deployer / www / blog;

http {
   server {
        listen  80;
        server_name www.mysite.com;
        access_log  logs/nosubdomain.access.log;
        return 301 $scheme://mysite.com$request_uri;
    }

    server {
        listen       80;
        server_name  mysite.com *.mysite.com;
        #charset koi8-r;

        access_log  logs/subdomain.access.log;
        root /var/www/staging-site/current/public;


        location / {
            passenger_enabled on;
            rails_env staging;
                root /var/www/staging-site/current/public;
        }

        location /blog/ {
           root          /home/deployer/www;
           fastcgi_index  index.php;

           if (!-e $request_filename) {
             rewrite  ^(.*)$  /blog/index.php?q=$1  last;
           }
           fastcgi_param  SCRIPT_FILENAME    /home/deployer/www$fastcgi_script_name;
           fastcgi_pass   localhost:9000;  # port to FastCGI
           break;
        }

        location ~* ^/assets/{
                root /var/www/staging-site/current/public;
                expires max;
                add_header Cache-Control public;
                break;
        }
}

我希望www.mysite.com显示我的网站,www.mysite.com/blog显示wordpress博客。它工作,但链接不起作用。例如http://mysite.com/blog/wp-content/uploads/2012/04/bname-268x300.jpg&w=150&h=150&zc=1&q=90没有显示图像,就在那里,它显示了博客的根目录。

任何帮助?

1 个答案:

答案 0 :(得分:0)

我同意有关您的URI中的尾随斜杠以及更改try_files上的属性的评论......

Here是我的WordPress博客的nginx配置。部分内容可以插入nginx配置中的任何位置块。

如果这没有用,请告诉我。