简述
Nginx相信大家已经很熟悉。
echo-nginx模块(下称为此模块)为国人开发的第三方调试nginx的debug模块。
所以说此模块的安装需要在编译nginx的时候一起安装,无法在已经完成nginx的安装上再增加此模块。若非要在已完成nginx的安装上再增加此模块。建议不要在线上环境安装。毕竟是调试模块。在测试机测试,调试完毕将配置文件再在线上环境使用。详情见:http://www.oschina.net/question/12_45735
安装方法
下载需要的echo模块
链接一 wget https://github.com/openresty/echo-nginx-module/archive/v0.60.tar.gz
链接二 wget https://github.com/openresty/echo-nginx-module/archive/v0.58.tar.gz解压
tar zxvf v0.60.tar.gz下载nginx源码
链接一 wget http://nginx.org/download/nginx-1.10.1.tar.gz
连接二 wget http://mirrors.sohu.com/nginx/nginx-1.9.5.tar.gz解压
tar -zxvf nginx-1.10.1.tar.gz进入nginx源码目录
cd nginx-1.10.1同大多数linux安装软件一样,准备生成 Makefile
1).先查看下以前装过的模块(命令见常用命令)
例:
红线为已安装的模块
2).增加模块
将红圈内除去— prefix ,输入新的—prefix,增加–add-module,其他的原样复制
—prefix为nginx安装位置(如果以前装过nginx不建议覆盖到同一目录)
–add-module为需要添加的模块路径,这里添加你的echo-nginx-module路径
原型: ./configure —prefix=nginx-file —add-module=echo-nginx-file
例: ./configure —prefix=/alidata/server/nginx-1.10.1 —add-module=/root/echo-nginx-module-0.60 —user=www —group=www —with-http_stub_status_module —without-http-cache —with-http_ssl_module —with-http_gzip_static_module
- 编译并且安装
make install
sbin - 执行文件夹
logs - log文件夹
html – 默认www目录
conf 配置文件夹(conf/nginx.conf 为默认配置文件)
如果按照此例安装完成后再次查看安装的模块(命令见下面),说明安装完成
在conf/nginx.conf文件中的server节点中加入:
server {
listen 9999;
server_name localhost;
root html;
location /echo {
default_type text/html; #使用echo模块输出html需要定义type,否则浏览器就成了下载文件
echo 'hello'; #输出内容,如果下面有其他代码请屏蔽。因echo遇到
}
}
使用时注意:
(1).echo命令只能放在url请求中,如果放在url请求外,会报错
(2).一次url请求,echo 只能打印一行,如果有逻辑判断,且判断成功,则echo会执行判断成功里边的echo,否则执行最后一句echo(此处不一定正确,在测试中发现是此现象)。
(3).如果echo后边有配置return 或者配置 proxy_pass,则echo的输出会被覆盖,即浏览器无法看到echo的内容,所以先将其他代码屏蔽。
(4).echo的打印字符查看请在浏览器中查看。重启nginx,使用浏览器访问 ip:9999/echo
说明安装成功,如果没有输出hello,请检查安装的模块(nginx -V)是否有echo-nginx-module-0.60,有说明echo模块安装成功。