nginx安装

安装依赖

apt install gcc g++ make openssl libssl-dev -y

下载相关软件

nginx-1.23.1.tar.gz
pcre-8.45.tar.gz
zlib-1.2.12.tar.gz

下载地址如下:https://pan.baidu.com/s/1alrZGkTzpPvmK2VNtet8HA?pwd=0ado

安装与编译

mkdir /opt/nginx
tar zxvf pcre-8.45.tar.gz
mv pcre-8.45 /opt/nginx/
tar zxvf zlib-1.2.12.tar.gz
mv zlib-1.2.12 /opt/nginx/
tar zxvf nginx-1.23.1.tar.gz
cd /opt/soft/nginx/nginx-1.23.1

编译命令

./configure --prefix=/opt/nginx/ --with-pcre=/opt/nginx/pcre-8.45 --with-http_stub_status_module --with-http_gzip_static_module --with-zlib=/opt/nginx/zlib-1.2.12 --with-http_ssl_module --with-stream

make -j 8
make install
ln -s /opt/nginx/sbin/nginx /usr/sbin/nginx

编写启动脚本

vim /lib/systemd/system/nginx.service

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

启动服务

systemctl enable nginx
systemctl start nginx

jenkins的反向代理配置

下面的配置是将192.168.3.10的请求全部转发到192.168.3.31:30808的jenkins服务上,需要创建80端口的server,将做301的转向,否则会出现跳转错误。

    upstream jenkins {
      keepalive 32;
      server 192.168.3.31:30808;
    }
    server {
        listen       80;
        server_name  192.168.3.10;
        return       301 http://$host$request_uri;
    }
    server {
        listen  8080;
        server_name 192.168.3.10;
        location / {
            proxy_pass          http://jenkins;
            proxy_set_header    Host $host:$server_port;
            proxy_set_header    X-Forwarded-Proto $scheme;
        }
    }

一些配置

1、跨域配置

add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers ' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';

2、动态静态资源分离型配置,同时解决跨域

    server {
        listen          9004;
        server_name  chatgpt.aolingo.com;

        client_max_body_size 81920M;


        location / {
            root   /opt/nginx/html/saddle-master;
            try_files $uri /index.html;
        }

        location /api {
            auth_basic "Restricted Content";
            auth_basic_user_file ollama-api.password;
            
            proxy_read_timeout      3500;
            proxy_connect_timeout   3250;
            
            proxy_set_header        X-Real-IP $remote_addr;
            proxy_set_header        Host $host;
            proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header        X-Forwarded-Proto https;
            
            proxy_set_header        SSL_PROTOCOL $ssl_protocol;
            proxy_pass http://192.168.58.27:11434;
        }
    }

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注