Nginx配置详解与初步实战
一.Nginx主配置文件
2.Nginx代理相关参数文件
3.Nginx编码相关配置文件
4.Nginx管理相关命令
5.Nginx日志相关记录文件
二.Nginx基本配置
Nginx主配置文件/etc/nginx/nginx.conf是一个纯文本类型的文件,整个配置文件是以区块的形式组织的。一般,每个区块以一对大括号{}来表示开始与结束。
Nginx主配置文件整体分为三块,分别是CoreModule(核心模块),EventModule(事件驱动模块),HttpCoreModule(Http内核模块)
CoreModule
EventModule
HttpCoreModul
PS: Nginx中的http、server、location之间的关系是?
http 标签主要用来解决用户的请求与响应。
server 标签主要用来响应具体的某一个网站。
location标签主要用于匹配网站具体URL路径。
http{}层下允许有多个Server{}。,一个Server{}。下又允许有多个location{}。
三.Nginx搭建网站
1.新建conf文件
vim /etc/nginx/conf.d/game.com.conf
server {
listen 80;
server_name game.com;
location / {
root /code/html5;
index index.html;
}
}
2.放置游戏源代码文件至nginx配置文件root指定的目录
3.本地hosts配置
4.重载nginx
systemctl reload nginx
5.访问game.com
四.Nginx搭建文件服务器
同上述,只用配置一下conf,设置autoindex为on,注意根目录不能有index.html
server {
listen 80;
server_name test.com;
location / {
root /code;
autoindex on;
}
}
PS:
1.如果出现403错误,查看error.log
cat /var/log/nginx/error.log
可能原因:
1.由于启动用户和nginx工作用户不一致所致
1.1查看nginx的启动用户,发现是nobody,而为是用root启动的
命令:ps aux | grep "nginx: worker process"
1.2将nginx.config的user改为和启动用户一致
命令:vi conf/nginx.conf
2.缺少index.html或者index.php文件,就是配置文件中index index.html index.htm这行中的指定的文件。
3.权限问题,如果nginx没有web目录的操作权限,也会出现403错误。
解决办法:修改web目录的读写权限,或者是把nginx的启动用户改成目录的所属用户,重启Nginx即可解决
chmod -R 666 /code
4.SELinux设置为开启状态(enabled)的原因。
4.1、查看当前selinux的状态。
getenforce
4.2、将SELINUX=enforcing 修改为 SELINUX=disabled 状态。
vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
4.3、重启生效。reboot。
- 点赞
- 收藏
- 关注作者
评论(0)