【发布时间】:2016-01-18 18:42:04
【问题描述】:
在过去的一年里,我开发了一个由三台机器组成的复杂网络应用程序。
机器 1 运行 nginx。
机器 2 (11.22.333.32)(仅运行 pm2 / 节点)
机器 3 (123.123.11.00)(仅运行 pm2 / 节点)
yoururl.com/canvas 指向机器 2,它会处理这些请求
yoururl.com/admin 指向机器 3,它会处理这些请求。
最近我的任务是将 yoururl.com/account 指向运行 php 的新机器 4 (222.11.56.32)
到目前为止,我所做的是创建一个全新的 ubuntu 14.04 安装并执行以下命令:
apt-get 安装 php5
apt-get 安装 php5-fpm
然后我在机器 4 的 /home 中创建了一个 index.php 文件
我遇到的每个指南似乎都需要在同一台机器上安装 nginx 和 php-fpm。我需要在机器 4 和 php-fpm 中运行 nginx 吗?我觉得那是不必要的,这就是为什么我要求你们帮助指导我朝着正确的方向实现这一目标。以下是我的尝试,任何指导甚至相关指南的链接,将不胜感激
server {
listen 80;
listen [::]:80;
server_name yoururl.com www.yoururl.com;
client_max_body_size 10M;
location /canvas {
proxy_pass http://11.22.333.32:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /admin {
proxy_pass http://123.123.11.00:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /account {
index index.html index.htm index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param SCRIPT_FILENAME /home/index.php;
fastcgi_pass 222.11.56.32:9000;
}
}
还有没有办法在浏览器中转到http://222.11.56.32:9000 并查看仅安装了 php5 / phpfpm 而不是 nginx 或 apache 的 php 站点?
【问题讨论】:
-
您还需要在机器 4 上安装 nginx。 php-fpm 只是解释器,因此您将拥有
/account对机器 4 进行代理(就像其他机器一样) -
@vsmoraes 知道了。谢谢!