详细信息 您现在的位置是:首页 > 常见问题
Centos之nginx多站点配置
来源:
发布时间:2021-06-23
784 人已围观
摘要这有点类似windows server上的IIS多站点用主机头来共用80端口,接下来我们就防着IIS主机头模式来给Nginx绑定多个域名、多个站点。
1.前言
这有点类似windows server上的IIS多站点用主机头来共用80端口,接下来我们就防着IIS主机头模式来给Nginx绑定多个域名、多个站点。(前面已经使用yum方式安装过了Nginx-1.16.1了,下面直接配置)
2.先看一下nginx主配置文件/etc/nginx/nginx.conf中的一行内容include /etc/nginx/conf.d/*.conf,这说明还可以自定义配置文件到conf.d目录下,只要命名为.conf为后缀名即可(语法要对哈)
3.新建一个站点配置文件(一个站点配置文件配置多个域名)
当然你如果有其他域名只管往里面照葫芦画瓢的加进去就行了。
3-1. server{}代表一个站点完整区块;
3-2. listen 80;代表本站点使用80端口;
3-3. server_name hiibm.com www.hiibm.com;指的是站点的域名(相当于IIS的主机头"域名"),多个域名用空格分开,以分号结尾即可。
3-4. access_log 指的是访问日志文件的详细路径,main指的是日志格式采用nginx主配置文件/etc/nginx/nginx.conf中的http{log_format main定义的日志格式}
3-5. location /nginx_status {} 指定义nginx访问自定义的访问地址叫nginx_status,将来访问的时候就使用如http://hiibm.com/nginx_status来查看nginx的实时访问状况。
3-6. stub_status on; 它是包含在location /nginx_status里面的配置,指的是启用nginx的stub_status模块;注意:启用这个模块的话必须事先已经安装过它,可以使用命令nginx -V |grep stub_status来查是否安装了。(我使用yum安装的时候默认已经安装过这个模块了)。allow all代表谁可以访问这个url,可以设定某台主机或某网段来访问,看图中注释。
3-7. location / {},代表本次的域名访问的根路径的相关设置。
3-8. root /data/web/hiibm.com;指的是本站点的web存放路径。注意web目录路径的属主要改成nginx用户
3-9. index index.html index.htm,这的是默认首页文件名,多个文件可以用空格分开。
3-10. error_page 404 /404.html 指的是开启自定义404页面,404页面的地址在网站根目录下并且文件名叫404.html,注意如果开启这个了,那你就必须去制作一个404页面,丢到指定位置。
3-11. error_page 500 503 503 504 /50x.html;这个不清楚,应该也是自定义的错误页面。
3-12. root /usr/share/nginx/html;指的是错误代码为500那一串的页面的详细地址,nginx已经默认有了/usr/share/nginx/html/50x.html
server { listen 80; server_name b.com www.b.com; #charset koi8-r; access_log /var/log/nginx/b.access.log main; location / { root /data/web/b.com; index index.html index.htm; } #error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
4.还可以再建任意多个Nginx站点配置文件,如下
啰嗦:只要配置文件名以.conf结尾,并放到/etc/nginx/conf.d/文件夹下即可。
5.啰嗦:关于站点网页目录权限问题
5-1.创建站点文件夹,执行命令:mkdir -p /data/web/hiibm.com
5-2.顺手改掉这个目录的属主权限,执行命令:chown -R nginx:nginx /data
5-3.比如上面配置文件中的hiibm.com站点,指定的网页目录是/data/web/hiibm.com,那么就必须保证nginx程序有权限访问它。而使用yum方式安装的nginx会自动创建一个系统账号叫nginx,专门用来运行nginx,所以你得保证用户nginx对网页文件夹有访问权限,可以使用命令chown -R nginx:nginx /data对整个根文件夹进行授权。不建议偷懒使用chmod -R 777 /data对其授权,这比较危险。也不建议使用root身份来运行nginx。
6.别忘记重要的事情,配置完之后要重启nginx服务
systemctl restart nginx
下一篇: 如何防止跨站脚本攻击(XSS)
站点信息
- 电话:15226178738
- QQ:1697915848
- 邮箱:1697915848@qq.com