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