nginx配置多个站点共用80端口的解决方法
只用改一个地方,在http模块里面加入你要引用的虚拟主机配置文件目录即可:
例如:include/usr/local/nginx/default.d/*.conf;
http{ log_formatmain'$remote_addr-$remote_user[$time_local]"$request"' '$status$body_bytes_sent"$http_referer"' '"$http_user_agent""$http_x_forwarded_for"'; access_log/var/log/nginx/access.logmain; sendfileon; tcp_nopushon; tcp_nodelayon; keepalive_timeout65; types_hash_max_size2048; include/etc/nginx/mime.types; default_typeapplication/octet-stream; include/usr/local/nginx/default.d/*.conf;//就这里加一行就可以了 }
2、建立虚拟主机配置目录:
在/usr/local/nginx/下面建立default.d文件夹,专门放置网站的配置文件。
贴一个我的配置上来:
/usr/local/nginx/default.d/mytest.conf
server{ listen80;//注意这里,要把默认的那个default_server去掉,因为我们在下面要单独配置域名访问,所以这里不要留default_server,不然会报错。 server_namemytest.com;//这里写你想设置的域名,可以写多个,与名之间用空格隔开 root/mnt/share/mytest.com;//这里是你虚拟机的根目录,写绝对路径 #Loadconfigurationfilesforthedefaultserverblock. location/{ indexindex.phpindex.htmlindex.htm;//这里配置默认访问的页面 } location~*\.php${//这里配置php解析.php文件 fastcgi_indexindex.php; fastcgi_pass127.0.0.1:9000; includefastcgi_params; fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; fastcgi_paramSCRIPT_NAME$fastcgi_script_name; } error_page404/404.html;//默认的错误页面 location=/40x.html{ } error_page500502503504/50x.html; location=/50x.html{ } }
再来一个:
server{ listen80; server_namewww.mytest1.com; root/var/www/html; indexindex.htmlindex.htmindex.php; location/{ try_files$uri$uri//index.php?$query_string; } location=/favicon.ico{ log_not_foundoff; } location~\.php${ fastcgi_pass127.0.0.1:9000; fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; includefastcgi_params; } }
3、还想再建其他虚拟机,一样的,复制上面那个文件,修改我标注的的那几个地方即可!
4、虚拟机配置文件配置好了之后,还需要在linux下面的hosts文件下面加上以上域名,不然还是会访问外网的哦。
vim/etc/hosts 127.0.0.1mytest1.com 127.0.0.1mytest.com
5、如果我们是要在windows下面访问虚拟机里面的linux下面的网站,那么还要在windows下面配置hosts文件,所有的域名都指向linux服务器,例如:
192.168.0.27mytest1.com 192.168.0.27mytest.com
6、遇到的问题:
nginx:[emerg]aduplicatedefaultserverfor0.0.0.0:80in/etc/nginx/vhosts/
遇到这个问题,肯定是:
server{ listen80
这个地方80后面的东西都去掉,只留下端口号80,去掉就可以解决这个问题了。
总结
以上所述是小编给大家介绍的nginx配置多个站点共用80端口的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!