一、nginx离线安装一键脚本
为了让离线安装nginx更为方便,我们可以准备一份自动执行的脚本。这样可以大大减少重复劳动和出错的风险。
以下是一个示例脚本:
#!/bin/bash # nginx离线安装脚本,仅供参考 # 安装依赖 yum -y install gcc gcc-c++ make zlib-devel pcre pcre-devel openssl openssl-devel # 下载nginx源码 wget http://nginx.org/download/nginx-1.18.0.tar.gz # 解压 tar -zxvf nginx-1.18.0.tar.gz # 配置并安装nginx cd nginx-1.18.0 ./configure make && make install
使用该脚本的方法是,将脚本保存为一个文件,例如install_nginx.sh,并将nginx源码包和该脚本一起拷贝到目标服务器上,然后在终端中执行命令:bash install_nginx.sh
二、离线安装nginx
如果服务器无法连接到外网或带宽较小,我们可以在其他机器上下载nginx安装包,并将安装包拷贝到目标服务器上进行安装。
以下是一个示例操作:
- 在一台外网可连接的机器上,执行以下命令:
- 将下载的安装包拷贝到目标服务器上
- 在目标服务器上解压并安装
$ wget http://nginx.org/download/nginx-1.18.0.tar.gz
$ scp nginx-1.18.0.tar.gz username@server:/path/to/destination
$ tar -zxvf nginx-1.18.0.tar.gz $ cd nginx-1.18.0 $ ./configure $ make && make install
三、nginx离线安装rpm
对于CentOS或RedHat等采用rpm包管理的系统,我们还可以通过离线的方式安装nginx rpm包。
以下是一个示例操作:
- 在一台外网可连接的机器上,执行以下命令:
- 将下载的rpm包及其依赖拷贝到目标服务器上
- 在目标服务器上安装rpm包
$ yumdownloader nginx
该命令会下载最新版本的nginx rpm包以及它的所有依赖。
如果没有办法拷贝整个yum缓存目录,也可以使用rsync工具只拷贝需要的文件。
$ rpm -ivh nginx-1.18.0-1.el7.ngx.x86_64.rpm
四、nginx离线安装 linux
以下是一个示例操作:
- 在一台外网可连接的机器上,执行以下命令:
- 安装nginx
- 查看安装情况
$ wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm $ rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
$ yum -y install nginx
$ nginx -v
五、nginx离线安装并运行
在完成离线安装后,我们需要运行nginx以启用其服务。常见的方式包括直接启动nginx进程、使用SysV或systemd等工具将其注册为系统服务。
以下是一个示例操作:
- 进入nginx安装目录
- 启动nginx进程
- 使用curl工具测试nginx服务是否启动成功
- 使用systemd注册nginx为系统服务
$ cd /usr/local/nginx
$ sbin/nginx
$ curl http://localhost
在目标服务器上创建以下文件:/usr/lib/systemd/system/nginx.service
[Unit] Description=nginx service After=network.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target
然后执行以下命令:
$ systemctl daemon-reload $ systemctl enable nginx $ systemctl start nginx
六、nginx离线安装lua模块
Lua是一种强大的脚本语言,广泛用于Web开发领域。nginx提供了lua模块,可以让我们在nginx配置文件中使用lua脚本。
以下是一个示例操作:
- 安装lua和lua-devel
- 下载ngx_lua模块
- 解压ngx_lua模块
- 在安装nginx时增加ngx_lua模块的编译选项
- 编译安装nginx
- 配置nginx使用ngx_lua模块
- 重启nginx,并测试
$ yum -y install lua lua-devel
$ wget https://github.com/openresty/lua-nginx-module/archive/v0.10.15.tar.gz
$ tar -zxvf v0.10.15.tar.gz
$ ./configure --add-module=/path/to/lua-nginx-module-0.10.15
$ make && make install
在nginx.conf中添加以下内容:
location / { content_by_lua_block { ngx.say("hello, world") } }
$ systemctl restart nginx $ curl http://localhost