巨蟒python全栈开发linux之centos5
1.nginx安装使用
2.nginx访问日志和压测命令
3.nginx反向代理配置
nginx的404页面
访问:淘宝官网的一个错误地址:http://taobao.com/eeeeeeee
淘宝的错误页面都是广告
我如果输入错误的地址:http://www.s18dnf.com/123123213
淘宝得到的页面是404优化页面,我们没有处理就会得到上边的404 Not Found
修改nginx.conf的404错误页面优化
找到如下配置
#当错误状态码是 40x系列就返回,nginx目录下的40x.html
error_page /40x.html;
重启nginx 查看404页面
打开之后,我们找到这个error_page 404
也就是页面不存在就是和这个.
我们也可以通过下面的方式进行统一管理
这里的/404.html中的/表示的不是根目录,表示的是以上边root用户对应的/opt/s18dnf/ 为相对路径
注意下面的一些修改的地方
保存退出,
我们就复制淘宝的404页面,进行处理,注意vim可以打开一个存在的文件,如果不存在就创建一个文件
将淘宝的错误页面写在,40x.html页面中,写完之后,出来,vim index.html我是看看能不能打开,
最后我们重新读取一下nginx -s reload
我们现在只需要重新输入一个错误的地址访问,得到相关的地址:http://www.s18dnf.com/9999
如果需要可以取:404模板代码搜索就行
.nginx限制ip访问功能
找到nginx.conf修改如下代码
location / {
#禁止192.168.226./ 这个地址段所有的ip访问
deny 192.168.226.1 ;
root /opt/s18dnf;
index index.html index.htm;
}
下面我们开始演示第8个知识点
我们访问一下上边的地址
在日志中捕捉到"192.168.34.1"这个IP地址
我们就拒绝这个ip不让它访问,如何操作呢?
通过虚拟主机访问到网页的
我们在拒绝访问的ip上边没有加上"分号",重新读取的时候会报错
这个时候,我们再加上分号
这个时候,我们再重新读取一下,
这个时候,我们再次刷新就会报错了
同一访问只需要注释掉就可以访问了
然后,再次重新读取一下.
再次刷新浏览器页面,就出来了,
限制IP的访问
.nginx反向代理功能 生活中见过什么代理?
.租房的中介 .卖票的黄牛
nginx可以返回信息吗,有就返回,没有就不返回.
nginx处理的是静态资源,
访问的如果是动态页面,nginx就充当的是黄牛的角色
开发+部署(请吃饭)
我们直接拖动windows中,在网页上保存的照片,到centos上,显示的是re -E命令
然后,我们点击"关闭"即可
我们将将DNF.jpg修改成 DNF666.jpg
这个时候,就多了一张图片,
如何访问?
在s18dnf中放"视频"和"图片",都可以显示,在这里"视频"我们就先不演示了.
原因,我们就是将这个东西放在这个root目录下面.
.实现nginx的反向代理功能 环境准备
准备2台机器
一个是真实资源文件 192.168.226.128 就理解为房东 ,提供dnf的资源界面 一个是反向代理服务器 192.168.226.129 理解为中介,当我们访问中介,就访问到dnf的网站资源 .分别在2台机器,安装nginx .资源服务器已经配置好,返回dnf页面 .反向代理服务器配置如下 vim编辑nginx.conf 找到第一个server虚拟主机
修改配置如下
location / {
proxy_pass http://192.168.226.128;
} .重启nginx,查看反向代理效果
安装完成2台虚拟机
查看第二台虚拟机的端口信息
将localhost修改成当前服务器的ip地址
我们希望上边的这个129充当服务器,当请求来到的时候,我们就通过129进行转发,
我们需要删除掉,下图中的"红框"内容
再修改
出现上图最后一行报错的原因是我们没有启动nginx,下面我们只需要启动即可
报错原因,配置文件的ip写错了
下图是
还是出现访问页面出现了问题,怎么办?
解决方案就是128服务器,开启nginx服务并且打开防火墙
这个时候,访问128和129服务器都可以访问服务器了.
注意:在sbin中重新启动nginx这个方式,
下面,我们停止房东的nginx服务器
nginx -s stop
房东挂了,代理129和房东128都访问不到了
现在,我们重新启动nginx,
这个时候,代理129和房东128都可以访问了
运行最下边这条命令,就会显示日志文件了,我们查看一下这个过程
我们打开129里边的日志
放开之后,我们进行,保存退出
然后,我们再重新启动
这个时候,我们再执行,打印日志
我们先访问129
服务器得到的是:捕捉到的浏览器端ip
128上看到129发来的请求
原理图(面试重要考题):
反向代理也仅仅是如此
巨蟒python全栈开发linux之centos5的更多相关文章
- 巨蟒python全栈开发linux之centos1
1.linux服务器介绍 2.linux介绍 3.linux命令学习 linux默认有一个超级用户root,就是linux的皇帝 注意:我的用户名是s18,密码是centos 我们输入密码,点击解锁( ...
- 巨蟒python全栈开发linux之centos6
1.nginx复习 .nginx是什么 nginx是支持反向代理,负载均衡,且可以实现web服务器的软件 在129服务器中查看,我们使用的是淘宝提供的tengine,也是一种nginx服务器 我们下载 ...
- 巨蟒python全栈开发linux之centos3
1.作业讲解 (1)递归创建文件夹/tmp/oldboy/python/{alex,wusir,nvshen,xiaofeng} 下面中的路径没有必要换,在哪里创建都行,根目录下或者tmp目录下或者其 ...
- 巨蟒python全栈开发linux之centos2
1.一些命令回顾 在vm中,右击"打开终端",输入命令ifconfig,得到的下图算是一个终端,并且我们可以看到服务器的ip是192.168.34.128 我们通过windows上 ...
- 巨蟒python全栈开发linux之cento9
1.docker入门学习 查看机器中已经启动的所有的进程. ps -ef 2.docker常用命令学习 3.docker学习3 4.dockerfile与镜像 5.docker私有仓库 6.rabbi ...
- 巨蟒python全栈开发linux之centos7
1.crm项目部署回顾(小BOSS) crm部署 nginx+uwsgi+django+mysql nginx 前端 uwsgi+django 后端 mysql 数据支撑 crm是一 ...
- 巨蟒python全栈开发linux之centos4
1.linux虚拟环境1-4 2.linux运行crm代码
- 巨蟒python全栈开发linux之cento8
1.复习路飞部署学习 2.mysql数据库远程访问 3.mysql主从复制 4.redis安全方式启动 5.redis数据类型 6.redis发布订阅 7.redis持久化 8.redis哨兵 9.r ...
- 巨蟒python全栈开发linux之centos6 第二篇
1. .nginx负载均衡的实现 .准备三台机器,准备3台虚拟机,或者和俩同桌交流一下 192.168.226.128 是nginx资源服务器,返回页面的 192.168.226.129 用作ngin ...
随机推荐
- SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 这个 ...
- INSTALL_FAILED_OLDER_SDK
Uploading file local path: /Users/Rubert/Android/workspace/MyApplication/app/build/outputs/apk/app-d ...
- php RSA 加密 与java加密互交,java解密
<? php class encrypt{ var $pub_key; function redPukey() { $pubKey = "MIIDhzCCAm+gAwIBAgIGASY ...
- 关于Java异常java.lang.OutOfMemoryError: PermGen space
内容来源: http://blog.csdn.net/fengyie007/article/details/1780375 PermGen space的全称是Permanent Generation ...
- 什么是Pro*C/C++,嵌入式SQL,第一个pro*c程序,pro*c++,Makefile,Proc增删改查
1 什么是Pro*C/C++ 1.通过在过程编程语言C/C++中嵌入SQL语句而开发出的应用程序 2.什么是嵌入式SQL 1.在通用编程语言中使用的SQL称为嵌入式SQL 2.在SQL标准中定义 ...
- 用BSF + Beanshell使Java程序能够运行字符串形式的代码(转载)
BSF(Bean Scripting Framework)最初是IBM Alpha工作组的项目,后来贡献给了Apache,BSF使Java能够更好的与各种流行脚本语言整合,实现不同语言之间的交互功能. ...
- Phalcon 訪问控制列表 ACL(Access Control Lists ACL)
Phalcon在权限方面通过 Phalcon\Acl 提供了一个轻量级的 ACL(訪问控制列表). Access Control Lists (ACL) 同意系统对用户的訪问权限进行控制,比方同意訪问 ...
- SSH框架中POJO层, Dao层,Service层, Action层的功能理解
pojo层就是对应的数据库表的实体类(如User类). dao层,一般可以再分为***dao接口和***daoImpl实现类,如userDao接口和userDaoImpl实现类,接口负责定义数据库cu ...
- 循环List<Object>
List<Object> infoData=ArrayList<>(); for (int i = 0; i < infoData.size(); i++) { Obje ...
- ibatis 动态列查询问题解决
http://hi.baidu.com/java513/blog/item/ace7c516c400390d4a90a7c8.html 这个问题是因为你查询的sql的列是变化的,但是ibati ...