Linux下编译安装Nginx 1.8.1 及配置(2)

[root@Server1 ~]# tar xvf nginx-1.8.1.tar.gz [root@Server1 ~]# cd nginx-1.8.1 [root@Server1 nginx-1.8.1]$ ls auto CHANGES CHANGES.ru conf configure contrib html LICENSE man README src

4、编译nginx:make

编译是为了检查系统环境是否符合编译安装的要求,比如是否有gcc编译工具,是否支持编译参数当中的模块,并根据开启的参数等生成Makefile文件为下一步做准备:

[root@Server1 nginx-1.8.1]# ./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre

结果如下:

Linux下编译安装Nginx 1.8.1 及配置

5、生成脚本及配置文件:make

编译步骤,根据Makefile文件生成相应的模块

Linux下编译安装Nginx 1.8.1 及配置

6、安装:make install

创建目录,并将生成的模块和文件复制到相应的目录: 

Linux下编译安装Nginx 1.8.1 及配置

备注:nginx完成安装以后,有四个主要的目录:

conf:保存nginx所有的配置文件,其中nginx.conf是nginx服务器的最核心最主要的配置文件,其他的.conf则是用来配置nginx相关的功能的,例如fastcgi功能使用的是fastcgi.conf和fastcgi_params两个文件,配置文件一般都有个样板配置文件,是文件名.default结尾,使用的使用将其复制为并将default去掉即可。 html目录中保存了nginx服务器的web文件,但是可以更改为其他目录保存web文件,另外还有一个50x的web文件是默认的错误页面提示页面。 logs:用来保存nginx服务器的访问日志错误日志等日志,logs目录可以放在其他路径,比如/var/logs/nginx里面。 sbin:保存nginx二进制启动脚本,可以接受不同的参数以实现不同的功能。 

7、启动:

将监听端口改为8090,避免80端口冲突:

listen 8090;

8、通过命令启动和关闭nginx:

[root@Server1 sbin]# /usr/local/nginx/sbin/nginx/nginx nginx: [emerg] getpwnam("nginx") failed #没有nginx用户 [root@Server1 sbin]# /usr/local/nginx/sbin/nginx/nginx nginx: [emerg] mkdir() "/var/tmp/nginx/client/" failed (2: No such file or directory) #目录不存在 [root@Server1 sbin]# /usr/local/nginx/sbin/nginx/nginx #直到没有报错,才算启动完成

9、重读配置文件和关闭服务:

[root@Server1 local]# /usr/local/nginx/sbin/nginx/nginx #启动 服务 [root@Server1 local]# /usr/local/nginx/sbin/nginx/nginx -s reload #不停止服务重读配置文件 [root@Server1 local]# /usr/local/nginx/sbin/nginx/nginx -s stop #停止服务 #停止服务

10.验证端口是否开启:

[root@Server1 sbin]# ps -ef | grep nginx root 13228 1 0 Apr23 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx/nginx #nginx的主进程,只有一个主进程 nginx 13229 13228 0 Apr23 ? 00:00:00 nginx: worker process #nginx工作进程,默认只有一个,可以通过修改nginx.conf中的worker_processes 1; 参数启动多个工作进程 root 13295 1400 0 00:01 pts/0 00:00:00 grep --color=auto nginx [root@Server1 local]# lsof -i:8090 #显示占用8090的进程 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 13337 root 6u IPv4 5932680 0t0 TCP *:8090 (LISTEN) nginx 13338 nginx 6u IPv4 5932680 0t0 TCP *:8090 (LISTEN)

11、通过给nginx的主进程ID号发送信号启动或停止nginx:

获取nginx主进程号的办法:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/4de290fe621c3bb9caddefe37970a0f8.html