目录
1、什么是虚拟主机?
虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供www服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的,互不影响。
nginx可以实现虚拟主机的配置,nginx支持三种类型的虚拟主机配置。
1、基于域名的虚拟主机 (server_name来区分虚拟主机——应用:外部网站)
2、基于ip的虚拟主机, (一台主机绑定多个ip地址)
3、基于端口的虚拟主机 (端口来区分虚拟主机——应用:公司内部网站,外部网站的管理后台)
2、基于域名的虚拟主机
1、关闭防火墙和selinux
[root@nginx ~]# systemctl stop firewalld && setenforce 0
2、配置nginx配置文件
[root@nginx ~]# vim /etc/nginx/nginx.conf
worker_processes 4;
worker_rlimit_nofile 102400;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
server {
listen 80;
server_name web.testpm.com;
location / {
root /var/www/nginx/;
index index.html index.htm;
limit_rate 2k;
}
}
server {
listen 80;
server_name web.1000phone.com;
location / {
root /1000phone/html;
index index.html index.htm;
}
}
}
2、检查配置文件语法错误
nginx -t 检查配置文件语法错误
3、为 域名为 web.testpm.com 的虚拟机,创建 index.html文件
4、为 域名为 web.1000phone.com 的虚拟机,创建 index.html文件
5、重新加载配置文件
[root@nginx ~]# nginx -s reload
6、在本地做域名解析(本地域名解析的位置C:\Windows\System32\drivers\etc\hosts)
在文件最后面加上这两行,保存即可。
7、测试访问
浏览器输入:http://web.testpm.com/
浏览器输入:http://web.testpm.com/
http://web.testpm.com/ 测试成功
http://web.testpm.com/ 测试成功
3、基于端口的虚拟主机
1、配置nginx配置文件
[root@nginx ~]# vim /etc/nginx/nginx.conf
2、重载nginx配置文件
[root@nginx ~]# nginx -s reload
3、测试访问
浏览器输入:192.168.18.133:80
浏览器输入:192.168.18.133:81
192.168.18.133:80 测试成功
192.168.18.133:81 测试成功
3、基于IP的虚拟主机
1、配置nginx配置文件
[root@nginx ~]# vim /etc/nginx/nginx.conf
2、重载nginx配置文件
[root@nginx ~]# nginx -s reload
3测试访问
浏览器输入:192.168.18.133
浏览器输入:192.168.18.137
192.168.18.133 测试成功
192.168.18.137 测试成功