这个配置文件比较关键,vim nginx.conf
首先你可以设置用户了,你是谁都无所谓了,或者你用root也行,工作进程worker progress就是多少个,一般这个是和你的
CPU相关的,这个就是运费的事了,然后这边就是单个CPU最大的连接,最大的connection就是1024个,如果你当前工作的服务器,
四核八线程,worker progress就是8,这个还是根据你机器的具体性能去配的,配多了也没用,然后下面就是一些error logs,
一些错误日志了,当然这个不是咱们关心的,这个event就是连接数,就是并发数,咱们主要是从http里面去看这些内容,其实这个
内容你看了就是很长,基本上都是注释的,这些都是没所谓的,在http里面相当于http请求,对于http请求我可以做一些配置,
多加一些缓存,多加一些压缩,有一些keepalived,等等一些配置,都可以去配,咱们可以先不用考虑include,default types,
先不用去管,sendfile开启传文件,keepalive_out先不用管,其实这些东西我都可以全部先删掉,因为我暂时不用它,我精简完了以后
基本上就是这样的一个效果,包括这个字符集其实我也不用管了,我刚才干掉了一堆东西,你看到就是这个了,一个server,一个大括号
这个其实就是虚拟主机的配置了,如何去配置这个虚拟主机,这个地址,默认80,直接就能访问到nginx的欢迎界面了,
一个是listen,相当于他监听了80端口,以及监听的是一个server_name,这里默认写的是localhost,当然你也可以写
你自己的IP,或者是写域名也是都可以,它是应用层之上的代理,也不是说两层或三层,它是7层代理,这里支持域名的,
为什么我敲192.168.1.114,然后80端口默认的,就能给我捕捉到Welcome to nginx界面呢,其实就跟下面这块有关了,
location这块有关了,有很多种语法,可以写值等=,也可以写浪线,1前面的浪线,这个就是相当于正则了,还有一些其他的语法
这些都可以,默认斜杠就是一个路径吧,暂且这么去理解,下面有两个比较关键的配置项,nginx配置你会发现,一个key,一个空格,
加一个value,有一点你需要注意的是,初学者可能会犯一个什么错误啊,你比如我把分号去了,我先不去他,我先改成70
保存退出之后,我去做reload,/usr/local/nginx/sbin/nginx -s reload,现在是没问题的,如果启动不了就报错了
现在我这么去访问发现他就不响应了
70回车才进来
因为我改端口了,监听70了,然后有一个啥问题呢,刚才我说了那块,我这块把冒号扔掉了
比如我再reload重启,它会报一个错
告诉你在37行的时候出现问题了,像这种问题呢,nginx没起来的时候,总会有一个提示的,你的错误是什么,
你会到这里面去查,37行哪行错了
可能并不是那么精准,大概前后几行,你可以看到少写个分号,就这个意思,这样的话它就又好了,我再次刷新没问题
基本上这就是一个初学者会犯的一个问题,他这个配置文件的语法啊,就是一个key,一个空格,加一个value,注意每一个配置项
结束要有一个分号,没有分号不行,起不起来,启动会报错,当然server除了配一个,还可以配多个,当然这个就是后话了,
那至于为什么可以访问到localhost,和70这一块你理解了以后,location里面有两个配置项,一个是root,一个index,
index就是默认会找到那个欢迎界面,root就是默认的文件夹,我没加斜杠就是相对路径,文件夹的路径,我cd到上一个
和conf平级的,就是nginx下的,可以有一个html,其实咱们的配置文件,里边的root,就是nginx的文件夹的根指的是什么,
里面写的不是html,其实指的就是他
到他这个下面去找一些东西,咱们可以看一下,我们可以cd html,里面有两个文件
里面有两个文件,一个是50x.html,一个是index.html,那我直接vim index.html,你会发现这就是你的欢迎界面了
Thanks for using nginx,当前的节点是114,我写一个nginx114,保存退出,你会发现这里面多了一个114了
其实找的就是这个目录,基本上就是这样的一个效果,那大体上就给你简单的介绍一下,nginx里面可能是最核心的吧,
就是最有用的server,就一个配置,基本上常用的就是listen和server_name,就是server_name,然后还有location,
这个root就是你的文件夹在哪里,你自己可以随便起,index就是默认要找的欢迎界面是什么,就是从这里开始找,没有就找
下一个,error_page就是我进行错误的时候,报错了,报错了会转向到error_page,可能是500 502 503 504的时候,
再转向到50x.html,差不多就是这个意思,然后你会发现这个和上个就有点区别了,上面是斜杠,下面是等号,这个就是一个精准的
匹配,这个稍后再说,既然他里面有一个server,你会看到这是有一个server,为了不影响咱们的看,其实你发现配置是很少的,
无非就是在一个http下,里面有一个server,里面有一个虚拟主机的配置,其实还可以配置多个,这都是可以的,比如我照上面再写一个
然后我去进行一个配置吧,这里面我可以自己去指定listen,比如我们叫1234,或者5678,这个你可以在自己定,然后这里面自己再看,
刚才我们是localhost,现在我们server_name,现在我们不叫localhost了,随便来一个域名,叫这个,我还可以继续location,然后
我也可以按照下面这个原封不动,再写一个看行不行,root我来一个名字,这也是可以的,就是与html平级的有一个这样的文件夹,
比如我也叫index.html
错误的地址你可以写,也可以不写,基本上就是这样的一个简单的配置,我又加了一个server,然后我把它进行保存,
现在我们要做的一个事情是加一个文件夹了,mkdir bhz.com,创建好了就有一个文件夹了,然后进入到这里边cd bhz.com
咱们建立一个index.html, vim index.html,我就随便写一个吧,这里边比如说有一个body,保存退出
因为改配置文件了,需要reload一下
没有报错说明是成功的,启动是成功的,之前我们敲的是IP地址,bhz.com:1234,识别不到是因为域名不是对外公开的,
windows的互联网并不能识别到这个域名,这块你自己去改一下配置文件了,我们找到System32,然后找到drviers,
然后找到etc,他里面也有etc,打开hosts,自己配一个吧,192.168.1.114,这个叫这个名字
保存了以后当前的windows,就能识别到了,访问这个地址就是访问114了,192.168.1.114,我再去reload一下,
为什么不行呢,我看哪一块写的有问题,service iptables status,防火墙压根就没开,我看看这个吧,vim /etc/hosts
114这是有的啊
我估计是我的网卡的问题,不可能是吧,这块是什么原因呢,192.168.1.114:1234
这样他就进来了,如果是这样的呢bhz.com:1234
他就识别不到,ping一下,ping 192.168.1.200
我就来ping一下,ping 192.168.1.114,这肯定是能拼通的
然后我来ping bhz.com,这个也是能拼通的
telnet一下, bhz.com 1234,能拼通,我这个本机已经拼通114了,为啥呢,你说的是什么问题呢,咱们加一个
现在就好使了
刚才就不好使,确实是有点问题啊,现在就好使了,我觉得不是刚才加那块的问题,不行咱们把他干掉
然后保存退出
这个小细节你不用在乎,是机器的问题,肯定是没有这个问题的,是网卡的问题,反应有点慢,自己去配域名
可能很少有去配IP端口号的,是内部自己去用,刚才这个问题不是问题,这就是一个最简单的虚拟主机配置,
也可以去加一个,无所谓