我想在一个实例上为多个站点提供服务。
我安装了 nginx、php-fpm 和一个 Rails 应用程序。我使用这样的网站来指导我。
我将 php-fpm 配置为监听本地套接字
listen = /var/run/php-fpm/php-fpm.sock
我用多个主机配置 ngnix:
include /etc/nginx/conf.d/*.conf
我有几个网站 php conf 文件,比如/etc/nginx/conf.d/site1.conf
server {
listen 80;
server_name site1.com www.site1.com;
root /var/www/site1;
access_log /var/log/nginx/site1.com-access.log;
error_log /var/log/nginx/site1.com-error.log;
location / {
index index.html index.php;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
}
}
和 Rails 站点配置文件,例如
upstream rails {
server 127.0.0.1:3000;
}
server {
listen 80;
server_name site2.com www.site2.com;
access_log /var/log/nginx/site2.com-access.log;
error_log /var/log/nginx/site2.com-error.log;
root /var/www/site2;
location / {
proxy_pass http://rails;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Url-Scheme $scheme;
}
}
我有一个独角兽 Rails 服务器运行通过rails s -p 3000
然而,没有网站出现site1.com
or site2.com
。我可以到达 rails 站点www.site2.com:3000
怎么了?我花了 2 天(将近 30 小时)尝试许多不同的博客、SO / SF 问题等。请分享您的见解或答案。
编辑 1:当我尝试访问任何一个站点时都没有创建日志条目。就像请求永远不会进来一样。
上述配置文件中的所有内容都运行良好。问题是端口 80 未对入站流量开放。