Nginx在同一台服务器托管两个网站

需求描述

现有一台阿里云服务器,并且有两个域名,其中一个域名做来搭建个人博客,另外一个域名是闲置的。今天心血来潮想把另一个域名也用起来,所以目前需求如下:

  • 不打算另购服务器,就用现在已有的这台服务器
  • 同一台服务器托管两个网站,即个人博客和GeoV网站
  • 两个网站分别用两个不同的域名访问

解决步骤

1、因为之前搭建个人博客时在服务器安装部署了Nginx服务器,所以接下来做的事情就是通过配置Nginx来托管两个网站。

2、进入到原有博客的目录下,新建一个网站目录,取名为geov,然后修改权限,相关命令如下:

cd /data/www/
mkdir geov
chmod -R 777 /data/www/geov

3、然后通过如下命令在geov目录下新建一个html文件,输入以下代码,用来检测最后是否配置成功:

vim /data/www/geov/index.html

输入以下代码:

<!DOCTYPE html>
<html>
  <head>
    <title></title>
    <meta charset="UTF-8">
  </head>
  <body>
    <p>Nginx running</p>
  </body>
</html>

4、将nginx的配置文件拷贝到本地,如下,将“/etc/nginx/nginx.conf”目录下的nginx.conf这个文件拷贝到本地,然后用Notepad++编辑器打开,删除掉文件里的server配置那段信息,然后在同样的地方粘贴如下代码:

	# 个人博客项目配置
	server {
		listen       8080;
		root         /data/www/hexo;
		index        index.html;
		location / {
			try_files $uri $uri/ /index.html; # 路由模式history的修改
		}
	}

	# GeoV网站项目配置
	server {
		listen       8081;
		root         /data/www/geov;
		index        index.html;
		location / {}
	}

5、然后在这两个server配置信息下面再添加两个server配置信息,粘贴如下代码:

    # nginx 80端口配置 
	server {
		listen  80;
		server_name     www.xbeichen.cn;
		location / {
			proxy_pass      http://localhost:8080; # 转发
		}
	}

	# nginx 80端口配置 
	server {
		listen  80;
		server_name     www.geov.online;
		location / {
			proxy_pass      http://localhost:8081; # 转发
		}
	}

6、将修改过后的配置文件上传至原目录“/etc/nginx/nginx.conf”下,为了出现配置错误需要恢复的情况,我们将服务器上原有的配置文件修改名称,以便恢复时使用。

7、文件上传后,使用如下命令重启Nginx,如下:

systemctl restart nginx

8、我们通过原来的www.xbeichen.cn来访问,发现进入到我们原来的个人博客,然后通过www.geov.online访问,进入到我们新建的网站了,如图:

发布了131 篇原创文章 · 获赞 140 · 访问量 26万+

猜你喜欢

转载自blog.csdn.net/qq_35117024/article/details/104400940