接着上一篇Nginx前站篇的内容
虚拟主机的类型:
1.基于域名的虚拟主机
虚拟主机就是web服务中的一个独立的网站站点,这个站点对应着一个域名(也有可能是IP或者端口),具有独立的程序和资源,可以独立的对外提供服务供用户访问。
Nginx中使用server{}表示一个虚拟主机,一个web服务中可以有多个虚拟主机。
所基于域名的虚拟主机,就是通过域名的不同区分不用的虚拟主机。是目前企业中应用最多的虚拟主机类型
2.基于端口的虚拟主机
就是通过不同端口区分不同虚拟主机,一般用于公司内部的网站。访问基于端口的虚拟主机,地址需要带端口
3.基于IP的虚拟主机
通过不同的IP区分不同的虚拟主机
基于域名的虚拟主机配置web站点
1.配置nginx.conf内容
cd /application/nginx/conf #切换到conf目录
egrep -v "#|^$" nginx.conf.default >nginx.conf #过滤带#和空格的行,生成新文件nginx.conf (也可以直接创建一个nginx.conf文件,只不过需要输入的内容比较多)
编辑nginx中的内容(使用vim nginx.conf)
worker processes 1;
events {
worker_connnetions 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name www.justdoit.org #www.justdoit.org表示你要配置的域名
location / {
root html/www; #html/www 表示你要在html目录下添加一个www的站点目录,专门用来存放www的域名的;也可以改成html/blog,用于存放blog域名的目录
index index.html index.htm;
}
}
}
2.创建域名对应的站点目录及文件
mkdir /applicaton/nginx/html/www -p #创建站点目录;如果当前目录是conf,则可以写成mkdir ../html/www -p
echo "hello this is www.justdoit.org" >../html/www/index.html #当indexhtml文件不存在时,创建并写入“”号的内容
cat ../html/www/index.html #当前目录是conf,并且查看写入的内容是否有误
3.检查语法并且重新加载Nginx
[root@cxx conf]# ../sbin/nginx -t #检查语法是否正确,如果出现xxx synax is ok 和xxxx test is successful 说明语法是正确的
[root@cxx conf]# ../sbin/nginx -s reload #平滑重启nginx,效果优于restart
4.检查重启后的进程和端口是否正常
ps -ef|grep nginx #检查进程,出现 root xxxx nginx:master process xxxxx 说明没有问题
netstat -lntp|grep 80 #检查端口,出现端口 tcp 和 ipv4的信息表示正确
5.在window的hosts文件中配置解析记录 (因为域名没有在正式的DNS上解析)
hosts文件一般在c:\windows\system32\drivers\etc\hosts
hosts 文件被誉为本地DNS,hosts会将指定域名解析成对应的IP,多个域名可以对应一个IP,默认情况下hosts文件优先于DNS服务器。
在hosts文件中添加
192.168.24.123 www.justdoit.org #192.168.24.123Linux主机IP,www.justdoit.org是要映射的域名
6.在window端使用dos命令ping一下
ping www.justdoit.org #如果ping的通就对了
7.最后在window端测试是否能够通过域名访问
在浏览器中输入http://www.justdoit.org