nginx配置添加返回头(nginx 返回指定文件)
nginx 返回指定文件
wgcloud非常的简单,你不用写各种模板和脚本,安装完成后就自动监控了,安装在网站有详细的说明。
系统模块如下:
1.主机集群监控,默认配置可支持500+主机同时在线监控,再多点也可以。如果做一些调优和加强,可支持数千节点监控。
2.CPU监控,内存监控,系统负载,磁盘等基础指标监控,这些都是必备的,不用说了哈,cpu,内存,磁盘都支持告警。
3.数据监控(mysql,oracle,pg等),这个是做什么的呢,比如你想监控每个小时有多少订单产生,有多少注册用户,这个功能就很有用了,它支持你写sql来统计数据,监控数据的变化趋势,当然不能写敏感字啊,系统做了很完善的过滤机制了,不用担心。数据源连接不成功时候会告警。
4.服务心跳检测,这个就是服务接口的健康检测,看你能返回200不,否则就算失败,支持告警。
5.进程监控,支持pid文件,进程id,进程名称来监控进程是否正常运行,使用了多少内存和cpu,支持告警。
6.docker监控,监控docker的使用状态,支持告警。
7.磁盘监控,监控磁盘的使用情况。
8.网络拓扑图,自动生成server和所有主机的网络拓扑图,很漂亮。
9.端口监控,监控端口是否telnet通,这个排除了网络防火墙因素,相当于telnet localhost 端口,支持告警。
10.日志文件监控,可以监控日志里有无关键字,有就告警,可以指定具体的日志文件或日志所在的目录,如/usr/local/nginx/logs/access.log,或/usr/local/nginx/logs/,指定目录时候会读取目录下最新的日志文件
11.告警方式,默认是邮件,也支持告警脚本执行,可以在脚本里实现钉钉微信等方式来告警,所有指标告警都可以在配置文件里关闭和开启。
12.设备管理,这个很有用哈,可以用来管理公司的各种设备。
13.主机画像,这个是对主机的cpu,内存,磁盘,负载,监控的端口,进程,docker,日志文件等所有信息进行全部展示。
nginx 修改返回内容
第一种:Nginx自己的错误页面
Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢?
看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。
server {
listen 80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
}
# 定义错误页面码,如果出现相应的错误页面码,转发到那里。
error_page 404 403 500 502 503 504 /404.html;
# 承接上面的location。
location = /404.html {
# 放错误页面的目录路径。
root /usr/share/nginx/html;
}
}
第二种:反向代理的错误页面
如果后台Tomcat处理报错抛出404,想把这个状态叫Nginx反馈给客户端或者重定向到某个连接,配置如下:
upstream www {
server 192.168.1.201:7777 weight=20 max_fails=2 fail_timeout=30s;
ip_hash;
}
server {
listen 80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
if ($request_uri ~* ‘^/$’) {
rewrite .* http://www.test.com/index.html redirect;
}
# 关键参数:这个变量开启后,我们才能自定义错误页面,当后端返回404,nginx拦截错误定义错误页面
proxy_intercept_errors on;
proxy_pass http://www;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-FOR $proxy_add_x_forwarded_for;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
}
第三种:Nginx解析php代码的错误页面
如果后端是php解析的,需要加一个变量
在http段中加一个变量
fastcgi_intercept_errors on就可以了。
指定一个错误页面:
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
指定一个url地址:
error_page 404 /404.html;
error_page 404 = http://www.test.com/error.html;
nginx 自定义 返回码
nginx的404返回,一般情况下是因为文件不存在,然后的提示。但根据你的描述,十次请求的话,就有一次head出现404,那文件存在以前权限可以排除1、试检查一下nginx.conf的设置,是不是有limit的设置,比如limit_zone、limit_conn,这些参数也是
nginx返回302
这个是请求地址被重定向了,需要知道这个重定向是在哪个节点触发点的(比如前端,负责均衡,nginx等),才能针对性去解决。
nginx配置返回json
给一套我用过的解决方案,用来开发过web项目(网页 + ios)和手游项目(ios + 安卓),都是一套后台对应多种前端平台:web框架:DjangoDjango 是一套相对全(zhong)面(yong)的框架,基本你要的功能都有,文档很细致,上手比较容易,开发效率比较高。自带 auth、session、orm、admin 等功能,尤其是 admin,如果要求不是太高,用自带的后台管理系统就能省下很多开发工作。web server:nginx相对 apache 较轻,简洁。用来部署 django 也比较方便,可参考 Setting up Django and your web server with uWSGI and nginx数据库:mysql这个不限定,看业务需求和开发者喜好。当然如果用了 django,自然最好选一个 orm 支持比较好的。RESTful API:Tastypie基于 Django 的 RESTful API。Django 本身作为一个 web 框架,返回的结果默认是渲染好的 html 文本。借助 Tastypie,可以比较方便的制作 json 数据格式的接口,将前后端解耦合。这样不管是网页、iOS 还是 Android,都可以用同样的接口。再针对问题补充一下:
1、如果使用python语言,需要学习哪些知识?python 语言本身,使用的框架,web 开发的通用知识,比如 HTTP 请求的处理流程、RESTful、OAuth 等。
2、选择什么样的python框架开发,这个框架的优势?见上文。
3、如何部署服务器?本地服务器调试,以及公网服务器部署?Django 自带本地调试服务,开发的时候用局域网地址调试即可。公网部署见上文。
4、如果使用python框架开发移动后台服务,在开发源码内使用哪种框架?mvc还是其它的,比如我返回json数据,每次json对象最外层有一些相同的东西,该如何处理?Tastypie 可以处理掉生成 json 数据时的很多体力活。
5、python的后台服务最大能支持多大的pv量会严重影响用户体验性能?这个没法给确切答案,具体情况会受机器硬件条件(CPU、内存、I/O)、网络带宽、代码质量、架构设计,甚至配置参数的影响。目前有较大型网站使用 python,并正常运作(参见 有哪些大型公司在使用 Python?有哪些知名项目是主要由 Python 写成的? - Crossin 的回答),所以 python 本身不是问题。实践时,做好压力测试和上线后的性能监控,找出瓶颈不断优化是王道。
6、如何兼顾 网页前端以及移动端 开发的后台?通过 API,后台无需知道是什么平台在使用它。
7、有没用相关的案例,即用python开发的移动后台?有没有该问题的开源项目?通常框架会自带测试案例。真实案例开源的暂时不知道。如果哪天我把之前写的开源了,再回来修改答案。
本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.