1.关于Nginx安装的补充
前一篇博客对nginx做了简单描述,这里再补充一点。
模块安装
nginx是高度模块化的软件,安装时要考虑需要用到哪些模块。在编译安装时,
./configure --prefix=/usr/local/nginx --with-xxx_module --without-yyy_module
#with表示要安装的模块,without表示不要安装的模块(指的是可选模块),不声明的情况下会默认。
#标准模块是不可以选择的。
安装依赖性:
安装需要的模块:
然后 make && make install。
启动:
然后就可以访问了:
2.配置文件和进程
在配置文件里,可以看到他们的形式都是这样的:
他的语法上一共分为三个逻辑块,并且具有层级关系。http 块中可以配置多个server ,每一个server块就代表一个http服务。server块中可以配置多个location,location将url 中的路径和服务器的某个目录建立起关联关系。
当我们新安装nginx时,它会以nobody这个用户去运行:
而这样是不安全的,所以要给他创建一个用户:
auto 表示自动识别cpu的核心数,开启后检测核心数然后开启相同数量的woker_processes 进程数。
为了避免cpu切换核心时性能损耗,可以将woker进程与cpu核心绑定,此时需要用到worker_cpu_affinitty指令。
表示方式是:0的数量等于核心数,当使用莫个核心时,该位置的0换成1.
3.Nginx基础命令
nginx #启动服务
nginx -h/-? #查看帮助
nginx -v #查看版本信息
nginx -V #查看编译信息
nginx -c #启动时指定配置文件
nginx -t #检测nginx.conf是否有语法错误
nginx -s #向正在运行的nginx进程发送信号,可以加 stop,quit,reload
quit会将正在进行的进程完毕后再停止,而stop指立即停止。
reload以便在不停止服务的情况下重新载入配置。
4.配置指令中 root 和 alias 的区别
1. location /test {
root html;
} #访问的绝对路径是 /usr/local/nginx/html/test/
2.location /test{
alias /haha
} #访问的绝对路径是 /haha
#alias 的作用是将 /test 和 /haha 建立对等的关系。