本周实验

1. Linux下Apache部署一个php页面,返回http数据包中查看server信息,修改Apache 配置使server banner自定义。

2. nginx设置反向代理,代理上面Apache的应用。

实验一

1、安装PHP、MySQL、Apache

安装PHP,首先安装epel-release,输入命令:yum -y install epel-release,看到这个界面之后就说明安装成功了

 安装PHP

首先获取PHP7.0yum源rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

然后查看php7.0的扩展名称,根据需求安装,查看扩展名指令:yum search php70w

查看到扩展名称后可以选择自己的要求安装几个。安装命令:yum install php70w php70w-fpm php70w-cli php70w-common php70w-devel php70w-gd php70w-pdo php70w-mysql php70w-mbstring php70w-bcmath

看到Complete就说明安装已经完成了,接下来使用php -v,查看php版本

PHP的一些操作指令:

systemctl start php-fpm.service   启动

systemctl Stop php-fpm.service 停止

systemctl Restart php-fpm.service 重启

systemctl enable php-fpm.service  开机自动启动服务

systemctl reload php-fpm.service   重启修改配置

安装MySQL

安装mysql。首先我们执行下面的指令获取repo源,wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

安装mysql-community-release-el7-5.noarch.rpm包,使用命令rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装好mysql-community-release-el7-5.noarch.rpm包之后进行安装MySQL。使用命令:yum install mysql-community-server

安装过程中会出现两次需要确认的情况,输入y按回车进行确认,当出现Complete就说明安装已经成功了

验证一下,使用MySQL -u root

安装apache

安装apache。使用命令:yum install httpd,重启apache。输入指令:systemctl start httpd,在本地浏览器输入ip验证一下

设置开机自动启动服务systemctl enable httpd

 

2、apache下部署一个页面

首先介绍一下apache的默认设置

默认端口:80 
默认发布目录:/var/www/html 
默认发布文件:index.html

进入apache默认发布的目录。使用命令:cd /var/www/html,并创建一个文件vim index1.html,保存并且退出

在本地浏览器访问该页面

由于这台电脑burpsuite出了点问题所以先用fiddler抓包,看一下数据。此时可以查看详细的PHP、apache信息。如图

3、修改banner信息

隐藏apache中的信息,修改apache配置文件/etc/httpd/conf/httpd.conf。添加两行代码:

ServerSignature Off

ServerTokens Prod

隐藏php中的信息,修改/etc/php.ini文件 在php的php.ini中添加或修改成如下一条代码:

expose_php = Off

4、修改之后重启服务,本地浏览器刷新页面,抓包再看一下。发现版本信息确实是隐藏了

实验二:

nginx 由于其高效的并发处理能力,现在很多网站已经完全用nginx代替apache来处理静态页面,但是动态页面的处理,依然使用apache。

nginx安装非常简单,参照我上一篇博客有。

设置反向代理。首先打开nginx配置文件vi /etc/nginx/nginx.conf,修改配置信息为

location / {
proxy_pass 127.0.0.1:80;
}

保存,这个不太清除怎么验证。

apache处理动态文件。可以修改:
location ~ .php$ {

proxy_pass 127.0.0.1:80;

}

就是让apache处理PHP文件,其他的文件有nginx处理。

关于修改banner信息;nginx反向代理apache应用的更多相关文章

  1. nginx 反向代理 apache 服务

    反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时 ...

  2. nginx 反向代理Apache

    2014年1月13日 18:15:25 同一个域名下,不同uri走不同的应用(不同的web根目录) 实现方式: Apache分别监听两个端口,对应不同的应用 nginx监听80端口,利用locatio ...

  3. 腾讯云Centos下Nginx反向代理Apache+Tomcat

    1. 安装Apahce, PHP, MySQL以及php连接mysql库的组件#yum -y install httpd php mysql mysql-server php-mysql     // ...

  4. nginx 反向代理apache服务器 配置java与PHP共存环境

    listen 80; listen 443; ssl on; ssl_certificate /passport.crt; ssl_certificate_key /passport.key; ssl ...

  5. nginx 反向代理 与 Apache backend的配置联合配置

    nginx 反向代理 与 Apache backend的配置联合配置: 说明: nginx 将http映射到Apache上的特定子目录. 配置方法步骤: 1.  设置域名, 子域名映射到指定服务器ip ...

  6. 15 nginx反向代理实现nginx+apache动静分离

    一:nginx反向代理实现nginx+apache动静分离-------------概念--------------------------- nginx反向代理服务器+负载均衡 用nginx做反向代 ...

  7. 配置LANMP环境(7)-- 配置nginx反向代理,与配置apache虚拟主机

    一.配置nginx反向代理 1.修改配置文件 vim /etc/nginx/nginx.conf 在35行http下添加一下内容: include /data/nginx/vhosts/*.conf; ...

  8. Nginx 反向代理、负载均衡、页面缓存、URL重写以及读写分离

    1.环境准备 前端Nginx:10.160.65.44 后端WEB服务器两台:10.160.65.49/10.160.65.50 2.安装Nginx: 下载nginx-1.9.15.tar.gz,放置 ...

  9. nginx反向代理原理和配置讲解

    最近有打算研读nginx源代码,看到网上介绍nginx可以作为一个反向代理服务器完成负载均衡.所以搜罗了一些关于反向代理服务器的内容,整理综合. 一  概述 反向代理(Reverse Proxy)方式 ...

随机推荐

  1. 三大统计相关系数:Pearson、Spearman秩相关系数、kendall等级相关系数

    统计相关系数简介 由于使用的统计相关系数比较频繁,所以这里就利用几篇文章简单介绍一下这些系数. 相关系数:考察两个事物(在数据里我们称之为变量)之间的相关程度. 如果有两个变量:X.Y,最终计算出的相 ...

  2. 阻塞队列 - java基于链表的简单实现

    1.阻塞队列的原理 阻塞队列与普通队列的区别在于:阻塞队列为空时,从队列中获取元素的操作将会被阻塞,当队列为满时,往队列里添加元素的操作会被阻塞. 试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其 ...

  3. table-layout:fixed; 表格比例固定

    固定表格布局: 固定表格布局与自动表格布局相比,允许浏览器更快地对表格进行布局. 在固定表格布局中,水平布局仅取决于表格宽度.列宽度.表格边框宽度.单元格间距,而与单元格的内容无关. 通过使用固定表格 ...

  4. HTML中data-* 属性

    使用 data-* 属性来嵌入自定义数据: <ul><li data-animal-type="bird">Owl</li><li dat ...

  5. JDK 1.8 -> 1.7

    电脑刚开始装的是1.8 version, 然后又需要用到1.7. 所以就要把1.8 降为1.7, 网上有很多说把1.8删掉,这种做法我是不建议的,那么要用的时候呢?又得装回来多蛋疼.. JDK 1.8 ...

  6. element-ui(或者说Vue的子组件)绑定的方法中传入自定义参数

    比如el-upload中的 :on-success= fn,其实是给组件el-upload传递一个prop,这样写的话fn只能接受upload组件规定的参数,如果想自己传递父组件中的参数比如b,要写成 ...

  7. `TypeError: torch.mm received an invalid combination of arguments - got (torch.FloatTensor, Variable),

    `TypeError: torch.mm received an invalid combination of arguments - got (torch.FloatTensor, Variable ...

  8. dubbo入门学习笔记之环境准备

    粗略的学完springcloud后由于公司的项目有用到一点dubbo,刚好手头上又有dubbo的学习资料,于是趁机相对系统的学了下duboo框架,今天开始记录下我的所学所悟;说来惭愧,今年之前,作为一 ...

  9. QT_REQUIER_CONFIG

    在qglobal.h中,定义了很多宏.下面这个QT_REQUIER_CONFIG,展开成: #define QT_REQUIRE_CONFIG(feature) Q_STATIC_ASSERT_X(Q ...

  10. 2017-10-22模拟赛T2 或(or.*)

    题面 [题目描述]你需要构造一个长度为 n 的数列 X,当中的数字范围从 0 到 2^30-1.除此之外你需要满足 m 个条件,第 i 个条件为 X[li]|X[li+1]|……|X[ri]=pi.| ...