本周实验

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. C#中d的??和?

    在C#中??和?分别是什么意思?   1. 可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空.例如:string str=null; 是正确的,int i=nu ...

  2. bash配色

    Table of Contents PS1格式 基本格式 其它可能的格式 PS1配色方案 配置文件 bash的命令提示符和终端外观由环境变量PS1定义 PS1格式 基本格式 \u 显示当前用户名 \h ...

  3. .NET快速开发平台免费版预发布

    自己团队开发的一套软件,可通过配置完成列表.表单.流程等的快速开发,因项目原因有一段时间没更新了,准备发出来希望能帮助更多企业快速实现信息化. 该软件主要应用的技术有如下: 1.存储:采用SqlSer ...

  4. 进程pid理解

    PID(Process Identification)操作系统里指进程识别号,也就是进程标识符.操作系统里每打开一个程序都会创建一个进程ID,即PID.   PID(进程控制符)英文全称为Proces ...

  5. 003dayPython学习初始模块和字节码

    一.注释: 1.单行注释 # 被注释的内容 2.多行注释 """ 被注释的内容 """ 二.模块 我们在编程的时候,往往是一个主.py文件, ...

  6. JAVA基础50题

    package package0530; import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;imp ...

  7. 数列全排列问题----递归实现--JAVA

    public class PaiLie { /** * @param args */ public static void main(String[] args) { PaiLie p=new Pai ...

  8. IT技术

    一.通信网络 TCP/IP协议 路由交换技术 二.编程语言 C/C++ python JAVA 三.数据库 关系型数据库 (1)MySQL  MySQL学习笔记一 MySQL学习笔记二 2.  非关系 ...

  9. 关于“load”方法

    load是一个方法,在程序文件中,只有ruby遇到它的时候才会执行.Ruby不会搜索整个文件去执行load命令.也就是说,当Ruby解释器遇到它的时候,它才会去寻找它要加载的文件.这意味着需要加载的文 ...

  10. /usr/lib/x86_64-linux-gnu/libopencv_highgui.so:对‘TIFFReadRGBAStrip@LIBTIFF_4.0’未定义的引用

     LIBRARIES += boost_thread stdc++ boost_regex     https://github.com/rbgirshick/fast-rcnn/issues/52