nginx.conf中把server的内容删掉,通过include vhost的方式加载某个域名的配置.如配置meimeng123.cn这个域名,放在vhost目录的配置如下:
server {
listen 80;
server_name meimeng123.cn www.meimeng123.cn;
root /home/god/mySite/www/meimeng123;
access_log /var/log/nginx/meimeng;
location / {
index index.html index.htm index.php;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~/.ht{
deny all;
}
}
然而,通过www.meimeng123.cn无法访问,在服务器通过localhost可以访问到index.html页面.说明ecs的安全组规则也配置了.
但为什么外面无法访问,服务器上可以访问网站呢?因为,nginx配置的是内网端口,外网由于权限问题不能访问内网80端口,其他端口就可以.可能是这样吧.因此,端口转接吧.命令如下:
iptables -A PREROUTING -t nat -i eth1 -p tcp –dport 80 -j REDIRECT –to-port 8080
这样外网访问外网网卡的80端口就可以转接到内网的80端口了.配置meimeng123.cn的文件如下:
server {
listen 8080;
server_name meimeng123.cn www.meimeng123.cn;
root /home/itdictionary/www/meimeng123;
access_log /var/log/nginx/meimeng;
location / {
index index.html index.htm index.php;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~/.ht{
deny all;
}
}
这样外网就可以通过meimeng123.cn访问到服务器了.