问题如下:我有两个域名,它们指向服务器上的两个可用 IP。例如:
siteone.com 指向 1.2.3.4 sitetwo.com 指向 1.2.3.5
我配置 nginx vhosts 时所做的就是
server {
listen site1.com:80; #
server_name site1.com www.site1.com;
在 vhost1 文件上
server {
listen site2.com:80; #
server_name site2.com www.site2.com;
在(单独的)vhost2 文件上。当然,这两个 vhost 文件是精确复制的,除了 site1 和 site2 路径。并且 vhost1 本身运行良好。
但是重新启动 nginx 后出现此错误:
重新启动 nginx:配置文件 /etc/nginx/nginx.conf 语法正常 [emerg]: bind() to 1.2.3.5:80 失败 (99: 无法分配请求的地址)配置文件 /etc/nginx/nginx.conf 测试失败
当我放
server {
listen *:80; #
server_name site2.com www.site2.com;
在 site2 vhost 上,nginx 重新启动且没有错误,但不会在 site2 路径上呈现页面。
我很困惑,感谢您的帮助。
答案1
尝试这个:
server {
listen 1.2.3.4:80; #
server_name site1.com www.site1.com;
...
}
server {
listen 1.2.3.5:80; #
server_name site2.com www.site2.com;
...
}