Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

作者 : 开心源码 本文共2560个字,预计阅读时间需要7分钟 发布时间: 2022-05-12 共242人阅读

本期接着上期接着给大家分享一下Nginx基于域名所谓的虚拟主机,在web服务里就是一个独立的站点,这个站点对应的可能是基于域名,也可能是基于端口或者者IP,所以有三类。本期Eleght科技先详细详情基于域名的虚拟主机配置方法。

一、基于域名的虚拟主机

简单的来说就是通过不同的域名区分不同的虚拟主机,也是企业应用最广的虚拟主机类型,几乎所有的对外提供服务的网站使用的都是基于域名的虚拟主机。

我们对nginx.conf文件进行编辑,主要配置内容如下所示

vim /usr/local/nginx/conf/nginx.conf

worker_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;

}

}

}

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

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/text

vim index.html #在这个text目录下创立并编辑index.html文件

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

1-2

第三步,我们在index.html写入少量内容,比方说我随意写点内容如下,一会我们进行测试

Welcome to www.text.com

Please enter your name :

第四步,可不能忘了编辑/etc/hosts文件,将虚拟域名加入以便于解析,我们依次键入以下命令,如图1-3所示

vi /etc/hosts

127.0.0.1 www.test.com #需要输入的内容,127.0.0.1是web服务器的IP,后面跟的是虚拟主机的域名配置,当然也可以一个IP对应多个域名,中间只要要用逗号隔开即可以了。

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

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.com

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

1-4

如图1-4所示,我们成功的打开了页面,并向文本框中写入了我们的Eleght科技头条号

我们再对Windows用户端浏览器进行DNS解析,我们编辑hosts文件,这个文件Win7,Win10系统通常位置在C:\Windows\System32\drivers\etc,如图1-5所示,我们编辑这个文件,跟上面的Linux相同,注意一点的是一个IP对应多个域名,中间用空格隔开,键入以下内容

机器IP地址 www.text.com

由于我没有对应的web服务器的IP,所以这一步就不再演示了,还有一个问题就是编辑这个文件时要改一下属性中的权限,保存后再设置好权限,为了系统安全。

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

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/text

mkdir -p /var/www1/text

cd /var/www2/text

vim index.html #在其中写点东西进行测试

cd /var/www1/text

vim index.html #在其中写点东西进行测试

但是这里还会出现一种问题启动提醒80端口被占用,此时你可以用ps检查一下谁在用,或者者直接键入

fuser -k 80/tcp

而后再次尝试重新启动nginx:

service nginx start

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

1-6

好了,本期的分享结束了,大家都学会了吗,假如大家在学习过程中遇到了什么问题,可以随时来讯问小E,假如文中有什么错误,欢迎指出评论,感谢!Eleght科技一个会分享技术的头条号!

Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

Eleght科技

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程

发表回复