Nginx和proxy_pass ip

时间:2016-03-28 10:31:16

标签: wordpress nginx

我的VPS上的nginx和proxy_pass没什么问题,配置如下:

server {

    listen 8080;
    root /var/www/;
    index index.php;

    location ~ \.php {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass wordpress;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME   $document_root$fastcgi_script_name;
            fastcgi_param QUERY_STRING      $query_string;
            include fastcgi_params;
    }

}

server {
    listen 80;
    root /var/www;
    index index.html;

    location ~ ^/mihal {
            proxy_pass http://127.0.0.1:8080;
    }

    location ~ \.php {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass wordpress;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME   $document_root$fastcgi_script_name;
            fastcgi_param QUERY_STRING      $query_string;
            include fastcgi_params; 
    }

}

每次我试图让http://serverdomanin.com/mihal我被重定向到http://127.0.0.1/mihal ... 我应该适应什么来核心使用这种配置? (在/ mihal /下是wordpress实例)。 非常感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

重定向是由端口8080上运行的服务生成的,该服务不知道名称serverdomain.com

您可以使用proxy_redirect指令重写重定向。

试试这个:

location ~ ^/mihal {
    proxy_pass http://127.0.0.1:8080;
    proxy_redirect http://localhost/ http://$host/;
    proxy_redirect http://localhost:8080/ http://$host/;
}

有关详细信息,请参阅this document