1. 前言
本文学习在CentOS7中安装配置Nginx的方法。
参考文档:
2. yum安装nginx
1、添加epel库
1
| yum install epel-release
|
2、安装nginx
安装完成后,nginx的默认配置路径为/etc/nginx/。
3、启动nginx
4、测试访问
浏览器如果不能访问,可能需要关闭防火墙或者打开端口。
1 2 3 4 5
| systemctl stop firewalld.service
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload
|
5、设置开机启动
1 2 3 4 5 6 7 8 9 10 11
| systemctl enable nginx ````
1、安装编译工具 ```bash yum install -y gcc-c++ yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel
|
2、下载nginx1.12.0并解压
1 2 3
| wget http://nginx.org/download/nginx-1.12.0.tar.gz tar -xzvf nginx-1.12.0.tar.gz cd nginx-1.12.0
|
3、创建临时目录
1 2 3
| mkdir -p /var/temp/nginx mkdir -p /var/temp/run/nginx chmod a+wrx -R /var/temp
|
4、配置编译选项
1 2 3 4 5 6 7 8 9 10 11 12
| ./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/temp/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi \ --with-http_gzip_static_module
|
注意:pid-path 不能设置为/var/run/nginx/nginx.pid。因为CentOS每次重启后,都会删除 /var/run 目录中的自建目录和文件,从而导致nginx自启动失败。
5、编译安装
进入/usr/local/nginx查看文件是否存在conf、sbin、html文件夹,若存在则安装成功
6、测试启动
1
| /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
|
如果不指定-c,nginx在启动时默认加载conf/nginx.conf文件。
7、测试访问
3. 编译安装所有模块
1、安装编译工具
1 2 3 4 5 6 7 8 9 10 11
| yum install -y gcc-c++ yum install -y pcre pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel yum install -y libxml2 libxml2-devel yum install -y libxslt libxslt-devel yum install -y gd-devel yum install -y perl-ExtUtils-Embed yum install -y GeoIP GeoIP-devel GeoIP-data yum install -y gperftools yum install -y libatomic_ops-devel
|
2、下载nginx1.12.0并解压
1 2 3
| wget http://nginx.org/download/nginx-1.12.0.tar.gz tar -xzvf nginx-1.12.0.tar.gz cd nginx-1.12.0
|
3、创建临时目录
1 2 3
| mkdir -p /var/temp/nginx mkdir -p /var/temp/run/nginx chmod a+wrx -R /var/temp
|
4、下载ngx_http_upstream_check_module模块
1
| git clone https://github.com/yaoweibin/nginx_upstream_check_module
|
5、配置编译选项
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| ./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/temp/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi \ --with-http_gzip_static_module \ --with-select_module \ --with-poll_module \ --with-threads \ --with-file-aio \ --with-ipv6 \ --with-http_ssl_module \ --with-http_v2_module \ --with-http_realip_module \ --with-http_addition_module \ --with-http_xslt_module \ --with-http_xslt_module \ --with-http_image_filter_module \ --with-http_image_filter_module \ --with-http_geoip_module \ --with-http_geoip_module \ --with-http_sub_module \ --with-http_dav_module \ --with-http_flv_module \ --with-http_mp4_module \ --with-http_gunzip_module \ --with-http_auth_request_module \ --with-http_random_index_module \ --with-http_secure_link_module \ --with-http_degradation_module \ --with-http_slice_module \ --with-http_stub_status_module \ --with-http_perl_module \ --with-mail \ --with-mail_ssl_module \ --with-stream \ --with-stream \ --with-stream_ssl_module \ --with-google_perftools_module \ --with-cpp_test_module \ --with-pcre \ --with-libatomic \ --add-module=./nginx_upstream_check_module
|
6、编译安装
3.1. 设置开机启动
参考文档:
1、创建systemd服务文件 nginx.service
1
| vi /usr/lib/systemd/system/nginx.service
|
写入内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13
| [Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target
|
3、设置开机自启动
1
| systemctl enable nginx.service
|
4、查看nginx状态
1
| systemctl status nginx.service
|
5、重启服务器验证开机自启动
1 2
| reboot systemctl status nginx.service
|
看到nginx已经启动,至此nginx自启动配置成功。