通过Nginx为网站配置二级域名

需求:服务器上面运行多个项目;实现每个二级域名访问对应项目;

服务器:阿里云服务器;域名:阿里云注册;

配置域名解析

即配置DNS解析。一定要首先配置,否则访问不到二级域名;

登录阿里云后台,要在域名解析上面添加主机记录值(即你要设置的二级域名名称)

配置Nginx

进入你的Nginx的 /conf 配置文件夹中,编辑 nginx.conf 文件

文件结构如下:

http {
(全局的配置参数...)
server {
(本server的配置参数...)
}
server {
(本server的配置参数...)
}
(全局的配置参数...)#可添加include vhost/*.conf;
}

关于server位置:

  • 可以将所有的server配置都写在nginx.conf配置文件中;

  • 也可另外定义一个文件夹存放配置文件,将配置文件包含进主配置文件中即可;

    我的做法:新建一个vhost文件夹来放配置文件;在主配置文件写上include vhost/*.conf;表示主配置文件引用它;

配置server

  1. 通过代理转发配置:
    即通过nginx转发到你想访问的项目;
server {
listen 80;
server_name demo.test.com;#你的二级域名;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:8000; #你启动的服务的ip:端口号;
}
}

这样配置之后可以通过Nginx转发到对应ip端口上运行的项目;

  1. 通过根目录配置:

你也可以通过指定项目的根目录来配置二级域名:

server {
listen 80;
server_name demo.test.com; # 要绑定的域名(或子域名)
root /home/www/; # 该网站的根目录
location / { # 不用管
}
}

重启Nginx

查看是否成功配置;

补充

default_server

http {
# 如果没有显式声明 default server 则第一个 server 会被隐式的设为 default server
server {
listen 80;
server_name _; # _ 并不是重点 __ 也可以 ___也可以
return 403; # 403 forbidden;
}
server {
listen 80;#添加默认server:在后面加上default_server
server_name www.a.com;
...
}
}

Nginx 的 default_server 指令可以定义默认的 server 去处理一些没有成功匹配 server_name 的请求;

参考:https://www.cnblogs.com/kuku0223/p/10740735.html

location

可以指定多个项目;

location /Demo01 {
......#项目1;根目录,代理转发
}
location /demo02 {
......
}

参考:

https://blog.csdn.net/xuxile/article/details/51705372
https://blog.csdn.net/lizhiyuan_eagle/article/details/90639448

posted on   passionConstant  阅读(1953)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示