本期接着上期接着给大家分享一下Nginx基于域名所谓的虚拟主机,在web服务里就是一个独立的站点,这个站点对应的可能是基于域名,也可能是基于端口或者IP,所以有三类。本期Eleght科技先详细介绍基于域名的虚拟主机配置方法。一、基于域名的虚拟主机简单的来说就是通过不同的域名区分不同的虚拟主机,也是企业应用最广的虚拟主机类型,几乎所有的对外提供服务的网站使用的都是基于域名的虚拟主机。我们对nginx.conf文件进行编辑,主要配置内容如下所示vim /usr/local/nginx/conf/nginx.confworker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name www.text.com; #server_name后面填写在hosts中设置的域名 location / { root /var/www/text; #root后面设置的是网站的根路径 index index.html index.htm; } }}1-1与图1-1相对比,我将不必要的配置参数都删掉了,配置了一个基于www.text.com域名的站点,虚拟主机的关键部分就是server{ }内的内容,还有一个建议就是最好用vim编辑文件,因为可以实现{ }高亮显示。第二步,创建域名对应的站点目录以及文件,在以上代码中我特别标明了root那一行,设置的就是网站的根路径自行设置即可,我写的是/var/www/text ,所以我们先建立这个目录,并创建一个index.html的文件,依次键入以下命令,如图1-2所示cd mkdir -p /var/www/text #创建/var/www/text目录cd /var/www/text #切换到/var/www/textvim index.html #在这个text目录下创建并编辑index.html文件1-2第三步,我们在index.html写入一些内容,比如说我随便写点内容如下,一会我们进行测试 Welcome to www.text.comPlease enter your name :<textarea style=”width:300px;height:100px;”></textarea>第四步,可不能忘了编辑/etc/hosts文件,将虚拟域名加入以便于解析,我们依次键入以下命令,如图1-3所示vi /etc/hosts127.0.0.1 www.test.com #需要输入的内容,127.0.0.1是web服务器的IP,后面跟的是虚拟主机的域名配置,当然也可以一个IP对应多个域名,中间只需要用逗号隔开就可以了。1-3第五步,我们重启nginx文件,键入以下命令cd /usr/local/nginx/sbin./nginx -s reload如果这一步提示错误的话,我们杀死进程后再开启nginx,命令如下ps -ef|grep nginx #查看进程号kill -TERM 1222 #杀死进程,数字代表进程ID/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf #启动nginx第六步,我们打开浏览器,输入www.text.com1-4如图1-4所示,我们成功的打开了页面,并向文本框中写入了我们的Eleght科技头条号我们再对Windows客户端浏览器进行DNS解析,我们编辑hosts文件,这个文件Win7,Win10系统通常位置在C:\Windows\System32\drivers\etc,如图1-5所示,我们编辑这个文件,跟上面的Linux相同,注意一点的是一个IP对应多个域名,中间用空格隔开,键入以下内容机器IP地址 www.text.com 因为我没有对应的WEB服务器的IP,所以这一步就不再演示了,还有一个问题就是编辑这个文件时要改一下属性中的权限,保存后再设置好权限,为了系统安全。1-5下面我再分享一下如何配置基于多个域名的虚拟主机,前面我们添加了示例www.text.com这个域名,下面我们继续添加text1,text2这两个示例域名,我们还是需要编辑nginx.conf中的配置文件vim /usr/local/nginx/conf/nginx.conf这时只需要在http { }添加server配置,将www.text.com配置内容复制下来,改service_name、root这几点就可以,记得设置的root要重新建立目录以及文件,配置示例如下server {listen 80;server_name www.text1.com; #server_name后面填写在hosts中设置的域名location / {root /var/www1/text; #root后面设置的是网站的根路径index index.html index.htm;}}server {listen 80;server_name www.text2.com; #server_name后面填写在hosts中设置的域名location / {root /var/www2/text; #root后面设置的是网站的根路径index index.html index.htm;}}接着创建目录以及文件,键入以下内容,还有就是千万别忘了hosts解析!后面大家自行测试就可以了,只要配置文件没有问题后面就没有问题mkdir -p /var/www2/textmkdir -p /var/www1/textcd /var/www2/textvim index.html #在其中写点东西进行测试cd /var/www1/textvim index.html #在其中写点东西进行测试但是这里还会出现一种问题启动提示80端口被占用,此时你可以用ps检查一下谁在用,或者直接键入fuser -k 80/tcp然后再次尝试重新启动nginx:service nginx start1-6好了,本期的分享结束了,大家都学会了吗,如果大家在学习过程中遇到了什么问题,可以随时来询问小E,如果文中有什么错误,欢迎指出评论,感谢!Eleght科技一个会分享技术的头条号!Eleght科技
本文出自快速备案,转载时请注明出处及相应链接。