内容简介:可见,配置文件放在
-
which nginx # or whereis nginx
:查看主程序文件 -
/etc/init.d/
:下创建了启动脚本nginx(需手动配置),支持service nginx start
命令 -
/var/log/nginx
:日志文件夹,/var/log/nginx/error.log
:错误日志文件,/var/log/nginx/access.log
:访问日志文件 -
/etc/nginx/nginx.conf
:Nginx全局站点配置文件,日志文件可以在/etc/nginx/nginx.conf
中配置,默认读取的配置文件 -
/etc/nginx/conf.d
:自定义Nginx站点配置文件存放目录 -
/etc/nginx/conf.d/default.conf
:网站默认站点配置 -
/usr/share/nginx/html
:网站文件默认存放目录 -
sites-available
:则是管理大量站点时服务器的一种通用配置。 -
sites-enabled
:则是一种单独配置,需要使用enabled
时,需要使用ln
命令软连接到相应网站。
sudo ln -s ~/path/to/your/mysite/mysite_nginx.conf /etc/nginx/sites-enabled/
/etc/nginx/nginx.conf
中有如下语句:
include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*;
可见,配置文件放在 sites-avaliable
文件夹中,需要创建软连接在 sites-enabled
中,才会生效。
server_name
的作用其实是当该机器上同时部署了其他域名服务时起作用的。
如果nginx中只配置一个server域的话,则nginx是不会去进行server_name的匹配的。因为只有一个server域,也就是这有一个虚拟主机,那么肯定是发送到该nginx的所有请求均是要转发到这一个域的,即便做一次匹配也是没有用的。还不如干脆直接就省了。如果一个http域的server域有多个,nginx才会根据$hostname去匹配server_name进而把请求转发到匹配的server域中。此时的匹配会按照匹配的优先级进行,一旦匹配成功进不会再进行匹配
参考:
location
接受两个参数,一个字符串或者正则,和一段代码。字符串用于匹配某个特定目录。
location / { autoindex on; autoindex_exact_size off; # 默认是开,以b为单位,关闭后,会显示MB GB
注意点
nginx 默认的账号权限太低,没有部分文件的访问权限,导致访问时出现 403 Forbidden
。
配置文件 /etc/nginx/nginx.conf
:
user nginx;
应该修改为:
user root;
Nginx运行
/usr/sbin/nginx -h # 查看帮助
/usr/sbin/nginx -c /etc/nginx/nginx.conf # 默认也会读取该配置文件,所以,可以不加-c参数 nginx # 运行/usr/sbin目录下的nginx的命令 nginx -s reload # 运行这句话的前提是,nginx正在运行,重载,如果之前运行了stop,那么会提示出错 "/run/nginx.pid" failed service nginx start service nginx status
以上所述就是小编给大家介绍的《CentOS Nginx 安装及配置》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。