2015-03-03 105 views
0
我有Tomcat上运行一个网站

安装WordPress,我想设置我的博客同一个网站的子目录下的example.com/blog在子目录中的Nginx

我使用多种设置它尝试过,但没有工作中。有的给出502错误,有的给404以下配置给出没有指定输入文件错误。

server { 
    listen 80; 
    server_name www.example.com; 
    gzip on; 

    location/{ 
     proxy_set_header X-Forwarded-Host $host; 
     proxy_set_header X-Forwarded-Server $host; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header X-Real-Ip $remote_addr; 
     proxy_pass http://localhost:8080; 
    } 

    location ^~ /blog{ 
     root /home/myubuntu/www/blog; 
     index index.php index.html index.htm; 
     try_files $uri $uri/ /blog/index.php?q=$uri&$args; 

     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass unix:/var/run/php5-fpm.sock; 
     fastcgi_index index.php; 
     include fastcgi_params; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
    } 
} 

我运行一个子域此相同的博客与成功配置如下:

server { 
    listen 80; 
    root /home/myubuntu/www/blog; 
    index index.php index.html index.htm; 

    server_name blog.example.com; 
    gzip on; 

    location/{ 
     try_files $uri $uri/ /index.php?q=$uri&$args; 
    } 

    error_page 404 /404.html; 

    error_page 500 502 503 504 /50x.html; 
    location = /50x.html { 
     root /usr/share/nginx.html; 
    } 

    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass unix:/var/run/php5-fpm.sock; 
     fastcgi_index index.php; 
     include fastcgi_params; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
    } 

}

可能有人请告诉我,我在做什么错

回答

0

我d同样的问题,并经过两天的搜索结合搜索设置和搜索...我做了一些适用于我的东西。 我nginx的运行1.8 WordPress的......说实话不知道...

这是我的配置

server { 
    listen 80; 
    server_name www.example.com example.com; 

    gzip on; 
    gzip_disable "msie6"; 
    gzip_vary on; 
    gzip_proxied any; 
    gzip_comp_level 6; 
    gzip_buffers 16 8k; 
    gzip_http_version 1.1; 
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; 

    location/{ 
      root  /http; 
      index  index.php index.html index.htm; 
      try_files $uri $uri/ @wordpress; 
    } 

    location ~ \.php$ { 
      root   /http/wordpress; 
      fastcgi_pass unix:/var/run/php5-fpm.sock; 
      fastcgi_index index.php; 
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
      include  fastcgi_params; 
    } 

    location @wordpress { 
      try_files $uri /index.php; 
      fastcgi_intercept_errors on; 
    } 

    location /wordpress { 
      try_files $uri $uri/ @wordpress; 
    } 

    error_page 404 /404.html; 
    error_page 500 502 503 504 /50x.html; 
    location = /50x.html { 
      root /usr/share/nginx/www; 
    } 
} 

我希望这有助于你...

0


这里是设置路径:

etc/nginx/sites-availability/default
您需要遵循nginx和wordpress中的最小设置。
server { 
     listen 80;

root /var/www/html; index index.php; server_name 182.71.214.253; location /blogs { try_files $uri $uri/ /blogs/index.php?$args; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /var/www/html; #root /usr/share/nginx/html; } # pass the PHP scripts to FastCGI server listening on the php-fpm socket location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }} </code> </pre> After this settings,You need to restart the two services.<pre><code>1:NGINX : sudo service nginx restart<br/>2:php5-fpm : sudo service php5-fpm restart</code></pre><br/>After that your website is working fine.<br/>If still needs problem then share with us.
+0

任何人都可以管理这个代码,即删除HTML标签('code'和pre)并以系统化的方式进行管理。因为它是经过测试的代码并且工作正常。 – Shankaranand 2015-07-03 11:41:37