Nginx下,一个server标签就是一个虚拟主机,分为以下三种情况:
基于端口:应用于公司内部网站和外部网站的管理后台
基于域名:应用于外部网站
基于IP:几乎不用
1)基于端口的虚拟主机
在html目录下新建welcome.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to my nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to my nginx!</h1>
<p>IP is localhost: 172.28.6.190<p>
<p> Base Port:8001<p>
</body>
</html>
修改nginx.conf,添加以下内容
#new server based port
server{
listen 8001;
server_name localhost;
#access_log logs/domain2.access.log main;
location / {
root html;
index welcome.html;
}
}
重启nginx服务,使用浏览器访问
2)基于域名的虚拟主机
在windows下添加host域名,方法如下:
在C:\Windows\System32\drivers\etc中的hosts文件里,添加一个与虚拟机(ip:172.28.6.190)对应的域名(www.domain.com)
在html目录下新建domain.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to domain nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to domain nginx!</h1>
<p>IP is 172.28.6.190<p>
<p> Base Domain:www.domain.com<p>
</body>
</html>
修改nginx.conf,添加以下内容
#new server based domain
server{
listen 80;
server_name www.domain.com;
#access_log logs/domain2.access.log main;
location / {
root html;
index domain.html;
}
}
重启nginx服务,使用浏览器访问
3)基于IP的虚拟主机
在html目录下新建ip.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to my ip nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to my ip nginx!</h1>
<p>IP is 172.28.6.190<p>
<p> Base IP<p>
</body>
</html>
修改nginx.conf,添加以下内容
#new server based ip
server{
listen 80;
server_name 172.28.6.190;
#access_log logs/domain2.access.log main;
location / {
root html;
index ip.html;
}
}
重启nginx服务,使用浏览器访问