当前位置: 首页 > 知识库问答 >
问题:

在CentOS中使用Nginx作为Apache上wordpress的反向代理

李景天
2023-03-14

我已经被这个问题困扰了3天。
我的服务器是Centos,在Httpd服务中使用wordpress(WP)。
它的IP是'103.232.120.178'
我想使用nginx作为WP的反向代理。

Httpd位于端口2101
Nginx位于端口80
WP位于子目录'bongda69'(URL:'103.232.120.178:2101/bongda69')

我想如果访问我的网站,它重定向到WordPress。
ex:visit'103.232.120.178',它将显示为WP站点:'103.232.120.178:2101/bongda69'

我的nginx.conf是:


    user apache apache;
    worker_processes 4;

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

    events {
        worker_connections  1024;
    }

    http {

    upstream backend {
            server localhost:2101; # IP goes here.
        }

    server {
        listen 103.232.120.178:80; # IP goes here.

        location / {            
            proxy_pass http://backend/bongda69/;
            }
        } # End server
    } # End http
    

在WP的一般设置中,我配置:


    WordPress Adress(URL): http://103.232.120.178/bongda69  
    Site Adress(URL): http://103.232.120.178/bongda69  

但是,当访问'http://103.232.120.178'时,显示错误:

    Not Found
The requested URL /index.php was not found on this server. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

如果我这样配置nginx:


    location / {            
            proxy_pass http://backend/;
            }

一切正常。但我必须访问网站“http://103.232.120.178/bongda69”,我不想要它。

共有1个答案

穆彬郁
2023-03-14

这应该管用

worker_processes 4;

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

events {
  worker_connections  1024;
}

http {

  upstream backend {
    server 103.232.120.178:2101; # IP goes here.
  }

  server {
    listen 0.0.0.0:80; # IP goes here.

      location / { 
        proxy_pass http://backend/bongda69;
      }   
  } # End server
} # End http

增加的

我建议加上

/var/log/nginx/access.log; 

为了查看您的请求发生了什么

 类似资料:
  • 我将Nginx配置为简单反向代理。 我只是使用基本设置 问题是,经过一段时间(几天)后,nginx背后的站点变得不可访问。Indead nginx尝试调用一个坏的ip(nginx后面的站点在我家盒子后面,我正在使用dyn dns,因为我的ip不固定)。这个dyn dns总是有效的(我可以直接调用我的站点),但由于不清楚的原因,Nginx被卡住了。。 如前所述,nginx只需在一段时间后给我504网

  • 使用nginx作为前端的反向代理将请求传递给应用是可行的。然而,只有nginx 1.4版本以上才支持WebSocket协议。下面是nginx代理HTTP和WebSocket请求的一个最基本的配置: server { listen 80; server_name _; location / { include proxy_params; pro

  • Nginx 最强大的地方是在于其 HTTP 请求的反向代理,也即常说的七层反向代理。在这一层代理中,通过 Nginx 框架提供的相关配置,我们能在该层将发送过来的 http 协议转换成各种其他的协议比如 fastcgi 协议、uwsgi协议、grpc、http(高版本协议)、websocket协议等。这样使用 Nginx 框架,我们可以支持多种应用服务(java web、python web等)的

  • 我有一个Apache-Server在端口80上运行我的PHP应用程序。PHP应用程序通过端口3000与NodeJS-Server(socket.io)通信。

  • Nginx的配置文件如下: server { listen 80; #此处应该配置你的域名: server_name doc.iminho.me; charset utf-8; #此处配置你的访问日志,请手动创建该目录: access_log /var/log/nginx/webhook.iminho.me/access.log

  • null 我倾向于认为它是第一个,但在这种情况下,nginx不会是应用程序的入口...(这是个问题吗?)