离线安装开源WAF:VeryNginx

本文详细介绍了如何离线安装开源Web应用防火墙VeryNginx,利用其强大的Web配置界面实现动态配置URL规则、反向代理,并结合静态资源缓存功能。通过编译OpenResty和VeryNginx,添加ngx_chache_purge模块,实现动态缓存控制。文章还提供了配置文件的修改步骤,确保VeryNginx与静态资源服务的无缝集成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VeryNginx是github上很火的一个项目,地址为:https://github.com/alexazhou/VeryNginx,它基于OpenResty,具备一个功能强大的Web配置界面,可以在这个页面上查看当前服务器的负载量和网络流量,可以动态的配置URL路径的跳转规则,反向代理规则,而无需重启nginx。最重要的是,VeryNginx兼容普通的nginx配置,在本文的案例中,我使用VeryNginx作为网站流量的监控器和静态资源缓存服务器。

 

 作者已经在github上给出了安装方法,大体就是编译两次,一次是编译VeryNginx,一次是编译OpenResty。给了一个python文件,我使用python 2.7运行没有问题。这个文件名为install.py,位于git项目的根目录下。

在编译之前,我们要准备好nginx的基本编译环境,包括gcc,pcre-dev,openssl-dev,zlib-dev等,以ubuntu为例,安装方法如下

 

sudo apt-get install openssl libssl-dev
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev

因为是离线安装,我们假设服务器不能连接互联网,但是还好,该脚本内只有一处需要下载,就是OpenResty的安装包,代码如下

#最新版openresty

openresty_pkg_url = 'https://openresty.org/download/openresty-1.15.8.1.tar.gz'
openresty_pkg = 'openresty-1.15.8.1.tar.gz'

work_path = os.getcwd()

def install_openresty( ):
......
    #download openresty
    down_flag = True
    if os.path.exists( './' + openresty_pkg ):
        ans = ''
        while ans not in ['y','n']:
            ans = common_input(' Found %s in current directory, use it?(y/n)'%openresty_pkg)
        if ans == 'y':
            down_flag = False

    if down_flag == True:
        print('### start download openresty package...')
        exec_sys_cmd('rm -rf ' + openresty_pkg)
        exec_sys_cmd( 'wget ' + openresty_pkg_url )
    else:
        print('### use local 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值