![cover](https://image.oss.salted-fish.tech/blog/nginx-custom-http-headers.png)
编译安装Nginx
安装环境
# 安装make:
yum -y install gcc automake autoconf libtool make
# 安装g++:
yum install gcc gcc-c++
安装可选库
一般我们都需要先装pcre和zlib,前者为了重写rewrite,后者为了gzip压缩
选定源码目录
可以是任何目录,本文选定的是/usr/local/src
安装PCRE库
也可以选择从GitHub下载
# 创建源码目录
mkdir /usr/local/src/pcre && cd /usr/local/src/pcre
# 下载源码
wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz
# 解压
tar -zxf pcre-8.45.tar.gz
# 进入源码目录
cd pcre-8.45
# 安装
./configure
make && make install
安装zlib库
# 创建源码目录
mkdir /usr/local/src/zlib && cd /usr/local/src/zlib
# 下载源码
wget https://zlib.net/zlib-1.2.12.tar.gz
# 解压
tar -zxf zlib-1.2.12.tar.gz
# 进入源码目录
cd zlib-1.2.12
# 安装
./configure
make && make install
安装或更新openssl(某些vps默认没装openssl)
参考
安装Nginx
下载nginx源码
mkdir /www/server/nginx/src
cd /www/server/nginx/src
wget https://nginx.org/download/nginx-1.20.2.tar.gz
# 解压
tar -zxf nginx-1.20.2.tar.gz
# 进入源码目录
cd nginx-1.20.2
# 编译安装
./configure --prefix=/www/server/nginx/nginx-1.20.2 --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-http_v2_module --with-http_gzip_static_module --with-file-aio --with-http_realip_module --with-openssl=/usr/local/src/openssl/openssl-3.0.2 --with-pcre=/usr/local/src/pcre/pcre-8.45 --with-zlib=/usr/local/src/zlib/zlib-1.2.12
make && make install
创建结构
# 证书
mkdir /www/server/nginx/cert
# server配置
mkdir /www/server/nginx/conf
mkdir /www/server/nginx/proxy_cache_dir
mkdir /www/server/nginx/proxy_temp_dir
mkdir /www/server/nginx/rewrite
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
include /www/server/nginx/conf/*.conf;
}
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Salted Fish
评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果