yum reinstall -y nginx 重装nginx(还原配置文件)(只还原被删除的)
nginx重启不了就去检查配置文件
yum下载的源码nginx,/etc/nginx/conf.d下server语句最好分开写,有几个.conf文件,就代表做了几个nginx网站,
这些自定义配置文件必须以.conf结尾,因为这些自定义配置文件的格式在nginx主配置文件中已经被指定了(主配置文件最后一行)
源码nginx上的defaut.conf 最好直接删了(或gzip),防止影响自定义server的作用
站点目录下面放 N.html(小游戏可以在这里直接解压,记得备份.html)
命令提示符里面ping以下域名,可以查看域名是否解析(自定义域名解析只在本机生效,可以采用windows上ping,来看域名是否解析),www不能省略,
为什么有的时候显示的是404not find ,有的时候显示的是警告提示
怎么做nginx层级结构
linux配置文件里面,/不是/,而是server语句中root后面指定的那个目录
URL拆分成3个部分,相当于一个server语句,(同一资源定位符)
域名或者IP location(可以省略) xx.hlml
浏览器自动加/ (然后找location)(location可以省略)
html必须紧跟站点目录,做小游戏的话,小游戏里面的东西必须紧跟站点目录(没有紧跟的话两种方式修改)
ctrl+F5 强制刷新,network+disable cache 强制刷新
如果一台主机上使用相同的 IP或域名,端口,那么浏览器访问的时候返回的html(conf.d下面哪个在上面,在上面的就起作用,按字母排列),不相同的话就该访问谁就访问谁,所以说,必须得有一个不同
从配置文件名可以使用 IP或域名.conf 来命名,方便区分
网站禁ping或者不允许IP访问(防盗链)(IP跳转),都可以避免解析的乱象,
http server location
http{}层下允许有多个Server{}层,一个Server{}层下又允许有多个Location
http{} 标签主要用来解决用户的请求与响应。
server{} 标签主要用来响应具体的某一个网站。
location{} 标签主要用于匹配网站 具体 URL路径。
虚拟主机的日志生效更新了(局部),全局里的日志不会更新
一个域名只能有一个80,多个域名多个80,可以多个80同时使用
IP或域名冲突,谁的 .conf在上面就访问谁(文件按字母排练)
企业不允许IP访问网站,防止域名解析的乱象
localhost=ip=域名解析后的ip
root=站点目录
location /x = 站点目录/x
server中root和index可以调换位置
favicon.ico #类似于logo的图标
nginx 的日志格式和局部或全局的指定,要在http层
如果不配置局部日志的话,那么所有的同一台主机上的 nginx所有的 网站的 访问日志都会记录在 /var/log/nginx.log/access.log 或者/var/log/nginx.log/error.log下面,也就是说放到了全局日志里面,这样不能区分是哪一个网站的日志
如果做了局部日志的话,那么这个网站的访问日志将会只记录在局部日志里面,不会记录到全局日志里面
nginx的日志最好都放到 /var/log/nginx下面 (注意格式),方便切割
如果自定义nginx 全局或局部 日志位置的话,再使用logrotate切割,看着舒服一些,全局和局部可以分开,但是压缩包和全局或者局部日志就不能分开了
自定义局部日志名 xx.log
自定义局部日志的指向,目标文件可以不存在(relode之后自动创建出来了)
http://www.syy1.com/cfefe 的报错也在局部日志里
favicon.ico 是类似于logo式的图片
location可以自定义URL访问时候的路径,既然访问自定义了,同样的,也可以自定义访问日志(off),但是一个server里面的多个location只能放在server里面
nginx的日志配置可以在http里面,也可以在server里面,也可以在location里面
大的日志不能直接使用cat ,vim 直接查看,防止占用较大的内存(alias可以做限制)
nginx ,redis,mysql,tomcat 都需要日志切割(方便查看)
yum 安装的nginx,源码安装的nginx,有的地方不一样
logrotate 是专门负责日志切割的一个工具,切割后的压缩包只能和全局日志放到一起(不能改路径了),可以使用grep 日期.log过滤查看
可以不使用logrotate切割,自己写脚本切割
想要切割某一服务的日志,就在vim /etc/logrotate.d/ 下面复制粘贴脚本就好了(自动运行)