打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

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

一、基于域名的虚拟主机

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

我们对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;

}

}

}

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文件

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对应多个域名,中间只需要用逗号隔开就可以了。

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

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,所以这一步就不再演示了,还有一个问题就是编辑这个文件时要改一下属性中的权限,保存后再设置好权限,为了系统安全。

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

1-6

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Nginx的配置详解
Nginx负载均衡基本使用
nginx如何配置?
Centos7环境下搭建Nginx反向代理多个Tomcat的负载均衡集群
LNMP集群nginx负载均衡和会话保持
moodle 2.0.2 安装图文教程 2——PHP Mysql环境搭建和moodle安装 - 乔木的日志 - ICT教育 - 中小学信息技术教育和教育信息化网站
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服