nginx和apache – 同一个IP上的多个虚拟主机 – 正确的configuration

我试图在同一台机器上运行nginx作为Apache的反向代理,并从中提供不同的网站。

我的问题是 – 是否可以添加虚拟主机只有nginx,并根据请求主机自动传递到Apache /主机名/path等到Apache。

或者我需要为nginx和Apache中的每个站点(域)设置一个虚拟主机?

另外,这个设置是否有任何潜在的问题?

我计划在我的nginxconfiguration中有这样的每个域(Apache运行在端口8080):

server { listen 80; root /var/www/site1.com/; server_name site1.com; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:8080; } } 

谢谢!

这个有可能。

在Apache Web服务器上,您需要将所有文件存储在默认虚拟主机上,以便以http:// IP_ADDRESS:PORT / hostname / path /

在Nginx服务器上创build多个虚拟主机并添加一个proy_pass规则,如下所示。

A.com – > /将代理转发到/ a-com / B.com – > /将代理转发到/ b-com / C.com – > /将代理转发到/ c-com /

希望这可以帮助你。