centos7.4 搭建nginx反向缓存代理

网友投稿 217 2022-11-12

centos7.4 搭建nginx反向缓存代理

nginx可以实现基于硬盘缓存的反向代理服务通过proxy_cache和fastcgi_cache两个功能模块完成配置

-----

本例:nginx反向代理服务器192.168.80.81web服务器192.168.80.82win7客户机 192.168.80.79

-----### web服务器192.168.80.82 配置:安装简单的nginx反向代理服务器192.168.80.81配置:1.上传反向代理插件、软件和解压:tar xzvf ngx_cache_purge-2.3.tar.gz -C /opt/tar xzvf pcre-8.41.tar.bz2 -C /opt/tar xzvf nginx-1.13.5.tar.gz -C /opt/yum install -y zlib-devel

2.编译安装nginxcd /opt/nginx-1.13.5

./configure \--prefix=/usr/local/nginx \--user=nginx \--group=nginx \--with-\--with-pcre=/opt/pcre-8.41 \--add-module=/opt/ngx_cache_purge-2.3

make && make intall

useradd -M nginx

cd /usr/local/nginx/conf

vi nginx.conf

清除原内容,插入以下:user  nginx nginx;worker_processes  1;error_log  logs/error.log  crit;worker_rlimit_nofile 65535;events {        use epoll;    worker_connections  65535;}{    include       mime.types;    default_type  application/octet-stream;        charset utf-8;    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  # '$status $body_bytes_sent "$'  #                  '"$"$#access_log  logs/access.log  main;    sendfile        on;    tcp_nopush     on;    #keepalive_timeout  0;    keepalive_timeout  65;        tcp_nodelay on;        client_body_buffer_size 512k;        proxy_connect_timeout 5;        proxy_read_timeout 60;        proxy_send_timeout 5;        proxy_buffer_size 16k;        proxy_buffers 4 64k;        proxy_busy_buffers_size  128k;        proxy_temp_file_write_size 128k;        proxy_temp_path /var/cache/nginx/cache_temp;        proxy_cache_path /var/cache/nginx/proxy_cache levels=1:2 keys_zone=cache_one:200m inactive=1d max_size=30g;        upstream backend_server{                server 192.168.80.82:80 weight=1 max_fails=2 fail_timeout=30s;    //web服务器的地址}    #gzip  on;    server {        listen       80;        server_name  test 192.168.80.81;      //自己nginx的地址         index  index.html index.htm;        #charset koi8-r;        #access_log  logs/host.access.log  main;        location / {                proxy_next_upstream error timeout invalid_header;                proxy_cache cache_one;                proxy_cache_valid 200 304 12h;                proxy_cache_key $host$uri$is_args$args;                proxy_set_header Host $host;                proxy_set_header X-Forwarded-For $remote_addr;                proxy_pass expires 1d;        }        location ~/purge(/.*) {                 //配置缓存功能                        allow 127.0.0.1;                         allow 192.168.80.0/24;   //允许清除缓存的测试机网段                        deny all;                        proxy_cache_purge cache_one $host$1$is_args$args;                }                location ~\.(php|jsp|cgi)?$ {                proxy_set_header Host $host;                proxy_set_header X-Forwarded-For $remote_addr;                proxy_pass }             access_log off;}}

3.启动nginx创建缓存目录mkdir -p /var/cache/nginx/cache_tempmkdir /var/cache/nginx/proxy_cache

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx -t   检查配置文件nginx    netstat -anpt | grep nginx

service firewalld stopsetenforce 0

测试

验证代理:win7客户机80.79访问nginx反向代理服务器地址80.81可以看到web服务器80.82内容

验证缓存:在nginx反向代理服务器192.168.80.81上

ls /var/cache/nginx/proxy_cache  可以看到里面出现了一些缓存文件

客户机访问//用来清除缓存。

ls /var/cache/nginx/proxy_cache/              缓存文件消失

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring @Cacheable指定失效时间实例
下一篇:vga线怎么接
相关文章

 发表评论

暂时没有评论,来抢沙发吧~