nginx 配置域名
nginx 配置域名
第一步: 云服务器
- 配置域名,并申请下载 SSL 证书
- 将域名添加云解析(很重要,二级域名,也需要添加云解析)
第二步 server 服务器
主要是使用nginx 配置
我的Linux服务器上有两个站点,站点和对应的目录关系如下:
域名是 www.ministep.cn ,站点目录是:/var/www/ministep.cn/
域名是python.ministep.cn,站点的目录是:/var/www/python.ministep.cn/
为了测试,我们可以在两个站点目录下分别放置两个index.html静态文件,文件内容随意。我们要实现的是分别访问两个域名对应两个不同的站点内容。
在Nginx配置优化解读文中,我们知道了Nginx的配置文件nginx.conf中的http模块下的server模块是用来配置站点参数的。那么多个域名多个站点的话就应该有多个server模块。当然,为了运维方便,我把多个站点配置分解成多个独立的配置文件(后缀为.conf),这些配置文件通过在nginx.conf中的http模块下的最后一行添加include vhost/*.conf;
关联起来。
开始配置
-
在nginx配置目录 /etc/nginx/ 创建目录 vhost;
mkdir vhost
-
进入vhost目录,创建conf配置文件,python_ministep_cn.conf
./vhost/python_ministep_cn.conf
server { listen 80; # 监听本机所有 ip 上的 8081 端口 server_name python.ministep.cn; # 域名:www.example.com 这里 "_" 代表获取匹配所有 root /var/www/python_ministep_cn/; # 站点根目录 index index.html; location ~.*(js|css|png|gif|jpg|mp3|ogg)$ { root /var/www/python_ministep_cn/; } }
-
进入vhost目录,创建conf配置文件,ministep_cn.conf
./vhost/ministep_cn.conf
```python
server {
listen 80; # 监听本机所有 ip 上的 8081 端口
server_name ministep.cn; # 域名:www.example.com 这里 "_" 代表获取匹配所有
root /var/www/ministep/; # 站点根目录
index index.html;
location ~.*(js|css|png|gif|jpg|mp3|ogg)$ {
root /var/www/ministep/;
}
}
~
```
-
在/etc/nginx/ 的配置文件 nginx.conf 添加刚才包含所有的虚拟主机的配置文件
/etc/nginx/nginx.conf
events { worker_connections 1024; } http { include /etc/nginx/mime.types; include /etc/nginx/vhost/*.conf; #配置文件 nginx.conf 添加刚才包含所有的虚拟主机的配置文件 default_type application/octet-stream; #fastcgi_buffers 8 128k; #send_timeout 60; #fastcgi_buffer_size 64k #fastcgi_buffers 8 128k; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; keepalive_timeout 120; send_timeout 120; }
-
配置生效
nginx -t # 检查nginx配置是否有效 nginx -s reload # 配置生效
补充:
nginx 很强大,还有很多可定制化配置,这里主要是 如何使用一个服务器配置多域名,其他的可直接网上搜索;
参考
一台服务器通过 nginx 配置多个域名(80 端口) - 软件老王 - 博客园
nginx 配置多域名(二级域名) - 掘金