Linux环境下离线安装和配置nginx

2 篇文章 0 订阅

序言

由于测试环境的nginx是已经搭建完成的,把搭建完成的nginx打包后传到生产的主机上,在sbin目录下测试nginx,就会报错找不到路径,所以我决定自己重新安装,于是经过不断的踩坑和请教,诞生了这篇文章。

参考的文章:Nginx安装与使用

一、下载依赖包

nginx:http://nginx.org/en/download.html (版本:nginx-1.16.1 tar.gz)
pcre:https://sourceforge.net/projects/pcre/files/pcre/8.41/(版本:pcre-8.41.tar.gz)
zlib:http://www.zlib.net/(版本:zlib-1.2.11.tar.gz)
oppenssl:https://www.openssl.org/source/(版本:openssl-1.1.1g.tar.gz)

下载说明

我之所以没有在生产中用yum或wget,是由于用不了,所以只能下载到本地后传到生产中。

1、下载zlib的位置:
在这里插入图片描述
2、下载openssl:
在这里插入图片描述

二、解压

tar -zxvf nginx-1.16.1.tar.gz
tar -zxvf openssl-1.1.1g.tar.gz
tar -zxvf pcre-8.41.tar.gz
tar -zxvf zlib-1.2.11.tar.gz

三、安装nginx

1、进入解压后的nginx的目录

cd  nginx-1.16.1

2、创建安装目录

由于我是安装在普通用户下的,所以需要创建安装目录。
建议:最好是安装在普通目录,
因为:我们这边的规定是:所有生产的nginx都必需在普通用户下编译和启停。

mkdir installs

3、编译nginx的安装目录

./configure  --prefix=/home/nginxsrv/nginx/nginx-1.16.1/installs  --with-pcre=../pcre-8.41   --with-openssl=../openssl-1.1.1g  --with-zlib=../zlib-1.2.11

4、安装nginx

make && make install

四、修改配置文件

cp  nginx.conf  nginx.conf.bak.fanhf.202006021600.orig
vim  nginx.conf  

先备份原来的,再将端口号80修改为8081
修改后的部分配置如下:

    server {
        listen       8081;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

nginx.conf只修改了端口号,其他的不曾做任何修改!

五、查看版本和检测

1、查看版本

cd /home/nginxsrv/nginx/nginx-1.16.1/installs/sbin
./nginx -V

显示:

nginx version: nginx/1.16.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) 
configure arguments: --prefix=/home/nginxsrv/nginx/nginx-1.16.1/installs --with-pcre=../pcre-8.41 --with-openssl=../openssl-1.1.1g --with-zlib=../zlib-1.2.11

2、检测

./nginx -t

显示:

nginx: the configuration file /home/nginxsrv/nginx/nginx-1.16.1/installs/conf/nginx.conf syntax is ok
nginx: configuration file /home/nginxsrv/nginx/nginx-1.16.1/installs/conf/nginx.conf test is successful

六、启动nginx

cd /home/nginxsrv/nginx/nginx-1.16.1/installs/sbin
./nginx 

查看启动情况:
在这里插入图片描述

七、遇到的坑

1、nginx的版本

我原本在测试环境用的是nginx-1.9.9的版本,而且是没有问题的,但是同事说还是用1.16.1的版本,比较稳定,所以就改成了1.16.1。

2、下载依赖包

由于下载的prce是最新版本的pcre2-10.33.tar.gz,而不是pcre-8.41.tar.gz,导致在nginx的解压目录下执行:make && make install 的时候报错:

src/core/ngx_regex.h:15:18: fatal error:pcre.h No such file or directory

于是查了一下,参考了这篇文章说是要把pcre的版本降低,于是就是改为pcre-8.41.tar.gz,解压后,重新编译和安装,就可以了。

3、编译nginx

在第一次编译nginx的时候,
编译指令:

./configure --prefix=/home/nginxsrv/nginx/nginx-1.16.1/installs

报错如下:

./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.

查了之后说是少依赖包,于是一步一步查,一步一步下载需要的3个依赖包,然后就想着把这3个依赖包都编译和安装,但是反复尝试了之后依旧不行,删了安,安了删,甚至在root里面也试了,都无果。于是问一位大神,他说3个依赖包不需要编译和安装,直接在编译nginx的时候指定3个依赖包的路径就可以,这才安装成功。

八、补充nginx的相关命令

1、停止nginx

cd /home/nginxsrv/nginx/nginx-1.16.1/installs/sbin
./nginx  -s stop

2、nginx重新加载

cd /home/nginxsrv/nginx/nginx-1.16.1/installs/sbin
./nginx –s reload

至此,nginx的安装和配置就完成了,关于nginx的配置还有其他的一些内容,我这里就不赘述了,网上有很多资料,可自行查找和学习。

九、安装过程中可能遇到的问题

解决nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)错误

nginx: [emerg] open() “/usr/local/nginx/logs/access.log” failed (21: Is a directory)

Nginx的安装,以及总是出现找不到pcre library的解决方法

与君共勉!!!

### 回答1: 要在Linux上进行离线安装Nginx,您需要先下载Nginx的安装包和所有依赖项的安装包。然后,将它们传输到您的Linux服务器上,并使用命令行安装它们。 以下是一些步骤: 1. 下载Nginx的安装包和所有依赖项的安装包。您可以从Nginx官方网站或其他可靠的源下载它们。 2. 将这些安装包传输到您的Linux服务器上。您可以使用FTP,SCP或其他文件传输协议。 3. 在Linux服务器上打开终端,并使用命令行进入安装包所在的目录。 4. 使用以下命令安装Nginx和所有依赖项: sudo dpkg -i nginx_*.deb sudo apt-get install -f 5. 安装完成后,您可以使用以下命令启动Nginx: sudo systemctl start nginx 6. 您还可以使用以下命令检查Nginx是否正在运行: sudo systemctl status nginx 希望这可以帮助您进行离线安装Nginx。 ### 回答2: 要在Linux上进行离线安装Nginx,您需要遵循以下步骤: 1. 首先,从Nginx官方网站(https://nginx.org)下载适合您Linux发行版的Nginx安装包。确保您选择的是适用于离线安装的版本。 2. 将下载的Nginx安装包复制到您的Linux系统上将要安装的目录中。您可以选择任何您喜欢的目录,例如"/tmp/nginx_offline"。 3. 解压Nginx安装包。可以使用以下命令:tar -zxvf nginx-package.tar.gz 4. 进入解压后的Nginx目录:cd nginx-package 5. 在这个目录中,执行configure命令,以配置编译选项:./configure 6. 当configure完成时,执行make命令以进行编译:make 7. 编译完成后,执行make install命令以安装Nginx:make install 8. 安装完成后,您可以在安装目录中找到Nginx的可执行文件,例如"/usr/local/nginx/sbin/nginx"。 9. 在Nginx安装目录下创建一个名为"conf"的目录,并将您的Nginx配置文件复制到此目录中。 10. 最后,在终端中运行以下命令以启动Nginx:/usr/local/nginx/sbin/nginx 现在,您已经成功进行了Linux离线安装Nginx。您可以通过访问服务器的IP地址或域名来验证Nginx是否正确安装并运行。 ### 回答3: 要在Linux上进行离线安装Nginx,您需要完成以下步骤: 1. 在一台联网的机器上下载Nginx的安装包(tar.gz格式),可以从Nginx官方网站上下载最新版本的安装包。 2. 将下载的安装包传输到目标Linux机器,您可以使用USB驱动器、网络共享文件夹或者其他可靠的传输方式。 3. 在Linux机器上创建一个目录,用于解压和安装Nginx。您可以使用命令`mkdir nginx`创建一个名为nginx的目录。 4. 使用命令`tar -zxvf nginx-xxx.tar.gz`将下载的安装包解压到nginx目录中,这里的`xxx`是安装包的版本号。 5. 使用`cd`命令进入解压后的nginx目录,然后运行`./configure`命令进行配置。您可以使用`--prefix=/usr/local/nginx`选项指定Nginx的安装路径。 6. 运行`make`命令编译Nginx。 7. 运行`make install`命令将Nginx安装到指定路径。 8. 安装完成后,您可以使用`/usr/local/nginx/sbin/nginx`命令启动Nginx。您也可以通过创建一个启动脚本或者将Nginx添加到系统服务中来实现自动启动。 通过以上步骤,您可以在Linux离线安装Nginx,从而搭建一个高性能的Web服务器。请确保您已经熟悉Linux命令行操作,并根据您的实际需求进行相应的配置和调整。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值