本文共 3207 字,大约阅读时间需要 10 分钟。
Nginx 是一个高性能的 HTTP 和反向代理服务器,以内存占用少、并发处理能力强著称。官方报告显示,Nginx 可以支持高达 50 000 个并发连接。
正向代理是通过配置客户端(如浏览器)代理访问互联网。例如,中国大陆用户无法直接访问谷歌,需在浏览器中配置代理服务器通过其访问目标网站。
反向代理是代理服务器接收客户端请求后,转发给真实服务器。客户端无需额外配置,只需将请求发送至反向代理服务器,代理服务器会隐藏真实服务器 IP 地址。例如,客户端可通过 9090 端口的反向代理访问 8080 端口的 Tomcat 服务器。
下载 Nginx 源码包并解压:
tar -zxvf nginx-1.26.1.tar.gz
安装必要工具和库:
yum -y install gcc gcc-c++ autoconf automake makeyum -y install openssl openssl-devel
进入源码目录,执行以下命令进行基本配置:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module
观察 make 文件后,输入以下命令编译并安装:
make && make install
进入安装目录并启动 Nginx:
cd /usr/local/nginx/sbin./nginx
访问服务器 IP 地址即可使用,默认端口为 80。
进入 /etc 目录,找到 profile 文件并添加以下内容:
export NGINX_HOME=/usr/local/nginxexport PATH=${NGINX_HOME}/bin:${NGINX_HOME}/sbin:$PATH 刷新环境变量:
source /etc/profile
验证配置:
cd /usr/local/nginx/sbin./nginx -v
nginx -v
nginx -s stop
nginx
nginx -s reload
/usr/local/nginx/conf/nginx.conf
worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }} worker_processes。worker_connections。server 块和 location 块。= /path:严格匹配路径。~ /pattern:带正则表达式匹配,区分大小写。~* /pattern:带正则表达式匹配,不区分大小写。^~ /prefix:优先匹配以 /prefix 开头的路径,不带正则表达式。env-base:9000/aaa 跳转至 127.0.0.1:8080。env-base:9000/bbb 跳转至 127.0.0.1:8081。aaa 和 bbb 目录,并在每个目录下添加 a.html 和 b.html 文件。server { listen 9000; server_name env-base; location ~ /aaa/ { proxy_pass http://127.0.0.1:8080; } location ~ /bbb/ { proxy_pass http://127.0.0.1:8081; }} ccc 目录,并添加 c.html 文件。upstream group1 { server 127.0.0.1:8080 weight=1; server 127.0.0.1:8081 weight=1;}server { listen 80; server_name localhost; default_type text/html; location /ccc/ { proxy_pass group1; }} http://env-base:9000/ccc/c.html,请求会被轮询分配至 8080 或 8081 端口。/data/image/ 目录下添加 1.png 图片。/data/www/ 目录下添加 index.html 页面。location /www/ { root /root/data/; autoindex on;} 修改 Nginx 配置:
user nobody;
调整文件权限:
chmod 755 -R /usr/local/nginx/html
关闭 SELinux:
setenforce disabled
持久关闭:
echo "SELINUX=disabled" > /etc/sysconfig/selinux
worker_processes 4;worker_cpu_affinity 0001 0010 0100 1000;
worker_connections * worker_processes / 21024 * 4 / 2 = 2048worker_connections * worker_processes / 41024 * 4 / 4 = 1024转载地址:http://yocfk.baihongyu.com/