文章目录
Nginx安装
1. 下载安装gcc,pcre-devel,openssl-devel,zlib-devel
安装方式为yum安装(需网络):
[root@rwsplit ~]# yum install gcc-c++ perl-devel pcre-devel openssl-devel zlib-devel wget
2. 解压缩nginx-1.11.1.tar.gz
# 将nginx-1.11.1.tar.gz解压缩至/usr目录
[root@rwsplit ~]# tar -zxvf nginx-1.11.1.tar.gz -C /usr
3. 进入nginx的解压缩目录
[root@rwsplit ~]# cd /usr/nginx-1.11.1/
4. 配置nginx服务器
–prefix:指定nginx安装位置
[root@rwsplit nginx-1.11.1]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module
若openssl指定安装目录,则使用
./configure --prefix=/usr/local/nginx --with-openssl=/usr/local/openssl --with-http_ssl_module
配置指令
5. 编译安装nginx服务器
[root@rwsplit nginx-1.11.1]# make && make install
我在make的时候报以下错误
[root@localhost nginx-1.18.0]# make && make install make -f objs/Makefile make[1]: 进入目录“/opt/run_env/nginx_install/nginx-1.18.0” cd /usr/local/openssl \ && if [ -f Makefile ]; then make clean; fi \ && ./config --prefix=/usr/local/openssl/.openssl no-shared no-threads \ && make \ && make install_sw LIBDIR=lib /bin/sh:行2: ./config: 没有那个文件或目录 make[1]: *** [/usr/local/openssl/.openssl/include/openssl/ssl.h] 错误 127 make[1]: 离开目录“/opt/run_env/nginx_install/nginx-1.18.0” make: *** [build] 错误 2
可以看错误信息
make[1]: *** [/usr/local/openssl/.openssl/include/openssl/ssl.h] 错误 127
中有/usr/local/openssl/.openssl
,但是我查看openssl安装目录,是没有这个目录的,问度娘,得大佬博客 [/usr/local/openssl//.openssl/include/openssl/ssl.h] Error 127,内容如下:/bin/sh: line 2: ./config: No such file or directory make[1]: *** [/usr/local/ssl/.openssl/include/openssl/ssl.h] Error 127 make[1]: Leaving directory `/usr/local/src/nginx-1.9.9' make: *** [build] Error 2 需要说明的是,我这里编译所使用的Nginx源码是1.9.9的。根据报错信息我>们知道,出错是因为Nginx在编译时并不能在/usr/local/ssl/.openssl/ 这个目录找到对应的文件,其实我们打开/usr/local/ssl/这个目录可以发现这个目录下是没有.openssl目录的,因此我们修改Nginx编译时对openssl的路径选择就可以解决这个问题了 解决方案: 打开nginx源文件下的/usr/local/src/nginx-1.9.9/auto/lib/openssl/conf文件: 找到这么一段代码: CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include" CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h" CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a" CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a" CORE_LIBS="$CORE_LIBS $NGX_LIBDL" 修改成以下代码: CORE_INCS="$CORE_INCS $OPENSSL/include" CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h" CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libssl.a" CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libcrypto.a" CORE_LIBS="$CORE_LIBS $NGX_LIBDL" 然后再进行Nginx的编译安装即可
亲测,木问题~
需要注意得是: 在修改完后,需要重新执行
./configure xxxx
命令,重新配置,在编译安装,否则不生效。
6. 关闭防火墙
[root@rwsplit nginx]# systemctl stop firewalld
[root@rwsplit nginx]# systemctl disable firewalld
7. 进入nginx服务器的安装目录
[root@rwsplit nginx-1.11.1]# cd /usr/local/nginx/
8. 启动nginx服务
# 启动服务 -c:指定配置文件
[root@rwsplit nginx]# sbin/nginx -c /usr/local/nginx/conf/nginx.conf
9. 查看服务启动情况
[root@rwsplit sbin]# ps -ef | grep nginx
10. 远程访问测试
访问地址:nginx所在服务器IP:80
11. nginx的重启关闭
参考博客:
https://blog.csdn.net/Logic_YSY/article/details/81536013
https://www.cnblogs.com/tuanz/p/8709254.html