在有网络的环境中下载所需文件:
将文件传输到离线服务器:
scp
命令(如果服务器间有网络连接):
scp nginx-1.xx.x.tar.gz user@offline-server:/path/to/destination/
# 上传并解压依赖库
tar -zxvf pcre-8.xx.tar.gz
tar -zxvf zlib-1.2.xx.tar.gz
tar -zxvf openssl-1.1.xx.tar.gz
# 编译安装PCRE
cd pcre-8.xx
./configure
make && make install
# 编译安装zlib
cd ../zlib-1.2.xx
./configure
make && make install
# 编译安装OpenSSL
cd ../openssl-1.1.xx
./config
make && make install
# 解压Nginx
tar -zxvf nginx-1.xx.x.tar.gz
cd nginx-1.xx.x
# 配置编译选项(可根据需要调整)
./configure \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-pcre=../pcre-8.xx \
--with-zlib=../zlib-1.2.xx \
--with-openssl=../openssl-1.1.xx
# 编译并安装
make && make install
echo 'export PATH=$PATH:/usr/local/nginx/sbin' >> /etc/profile
source /etc/profile
# 启动
/usr/local/nginx/sbin/nginx
# 检查是否运行
ps aux | grep nginx
缺少编译器:
依赖库版本不匹配:
权限问题:
chown -R root:root /usr/local/nginx
chmod -R 755 /usr/local/nginx
设置开机自启:
配置防火墙(如果需要):
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
验证安装:
ldd
命令检查运行时依赖是否完整