Apache安全及优化

配置第一台虚拟机                                     
VM1网卡  yum仓库 挂载磁盘
上传3个软件包到/目录

到/目录下进行解压缩

tar xf apr-1.6.2.tar.gz

tar xf apr-util-1.6.0.tar.gz

tar -xjf httpd-2.4.29.tar.bz2

mv apr-1.6.2 httpd-2.4.29/srclib/apr

mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

安装服务

yum -y install \

gcc \

gcc-c++ \

make \

pcre-devel \

expat-devel \

perl \

zlib-devel \

zlib

切换目录

cd httpd-2.4.29

安装服务

./configure \

--prefix=/usr/local/httpd \

--enable-so \

--enable-rewrite \

--enable-charset-lite \

--enable-cgi

make && make install

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd

vi /etc/init.d/httpd

# chkconfig: 35 85 21  //35级别自动运行  第85个启动 第21个关闭

# description: Apache is a World Wide Web server

chkconfig --add httpd

vi /usr/local/httpd/conf/httpd.conf

ServerName

ln -s /usr/local/httpd/conf/httpd.conf /etc/

ln -s /usr/local/httpd/bin/* /usr/local/bin/

systemctl stop firewalld.service

setenforce 0

service httpd start

netstat -anpt | grep 80

重新编译压缩模块

-------- 以下配置网页压缩--到之前的源代码目录----------

cd httpd-2.4.29

./configure   --enable-deflate                    //增加压缩模块

重新安装

make && make install

修改配置文件

vi /etc/httpd.conf

搜索mod_deflate.so

LoadModule deflate_module modules/mod_deflate.so

将前面的#号去掉

重启服务

service httpd restart

查看

apachectl -D DUMP_MODULES | grep deflate

------在配置文件末尾新增-------

修改配置文件

vi /etc/httpd.conf

文件末尾插入下面命令

AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript image/png        image/jpeg application/x-httpd-php application/x-javascript    #文件类型

DeflateCompressionLevel 9   #压缩级别

SetOutputFilter DEFLATE    #压缩类型

-----测试页----

切换目录

cd /usr/local/httpd/htdocs/

ll查看 删除所有

cd /usr/local/httpd/htdocs/

vim index.html

<html>

<head>

<title>--压缩测试页--</title>

</head>

<body><h1>这是一个测试网页内容压缩的页面!!This is test Page!!</h1>

<img src=b.jpg / >

</body>

</html>

修改配置文件  将倒数第四行修改为1.jpg

将1.jpg图上上传到远程连接软件

访问 192.168.1.100

-------注意中文乱码问题解决方法如下-----

vi /etc/httpd.conf

插入到最后一行

AddDefaultCharset utf-8  

将图片上传到/目录

 再从/目录移到/usr/local/httpd/htdocs/

-----------配置网页缓存---------

cd /usr/local/httpd/

./bin/apachectl -D DUMP_MODULES | grep expires

service httpd stop

在文件最后新增

vi /etc/httpd.conf

<IfModule mod_expires.c>

        ExpiresActive On

        ExpiresDefault "access plus 60 seconds"

</IfModule>

----------------------------------------------------------------------------------------------

配置第二台虚拟机                                     

配置第二台:VM1网卡  yum仓库 挂载好磁盘

上传3个软件包到/目录下

到/目录下进行压缩

tar xf apr-1.6.2.tar.gz

tar xf apr-util-1.6.0.tar.gz

tar -xjf httpd-2.4.29.tar.bz2

mv apr-1.6.2 httpd-2.4.29/srclib/apr

mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

安装好服务

yum -y install \

gcc \

gcc-c++ \

make \

pcre-devel \

expat-devel \

perl \

zlib-devel \

zlib

cd httpd-2.4.29

安装好服务

./configure \

--prefix=/usr/local/httpd \

--enable-so \

--enable-rewrite \

--enable-charset-lite \

--enable-cgi

--------------------------------------------------------------------------

make && make install   #

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd  #

vi /etc/init.d/httpd  #

# chkconfig: 35 85 21  //35级别自动运行  第85个启动 第21个关闭  #

# description: Apache is a World Wide Web server  #

chkconfig --add httpd  #

vi /usr/local/httpd/conf/httpd.conf   #

ServerName   #

ln -s /usr/local/httpd/conf/httpd.conf /etc/  #

ln -s /usr/local/httpd/bin/* /usr/local/bin/  #

systemctl stop firewalld.service   #

setenforce 0   #

service httpd start    #

netstat -anpt | grep 80    #

-------配置防盗链--------
到第二台虚拟机中

cd /httpd-2.4.29/

安装下一个服务

./configure --enable-expires

编译安装

make && make install

cd /usr/local/httpd/htdocs/

ll查看

编辑配置文件

vim index.html

插入

<html>

<body>

<h1> Test Page! </h1>

<img src="http://192.168.1.100/1.jpg">

</body>

</html>

访问 192.168.1.127

./bin/apachectl -D DUMP_MODULES | grep rewrite

vi /etc/httpd.conf

LoadModule rewrite_module modules/mod_rewrite.so

将第二张图片命名为error.jpg  上传到第一台虚拟机中

------针对目录做防盗链处理------------在htdocs目录属性最后位置新增---

 vim /etc/httpd.conf

搜索AllowOverride None

插入

        RewriteEngine On

RewriteCond %{HTTP_REFERER} !^http://192.168.1.100/*

        RewriteCond %{HTTP_REFERER} !^http://bc.com/.*$ [NC]

        RewriteCond %{HTTP_REFERER} !^http://bc.com$ [NC]

        RewriteCond %{HTTP_REFERER} !^http://www.bc.com/.*$ [NC]

        RewriteCond %{HTTP_REFERER} !^http://www.bc.com$ [NC]

        RewriteRule .*\.(gif|jpg|swf|png)$ http://192.168.1.100/error.jpg [R,NC] //需要重定向到一个盗链主机可以访问的位置,否则看不出效果来。

重启服务

systemctl restart httpd

访问

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/632826.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Redis】基于Token单点登录

基于Token单点登录 获取验证码 流程图 #mermaid-svg-DLGHgCofEYXVSmI5 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-DLGHgCofEYXVSmI5 .error-icon{fill:#552222;}#mermaid-svg-DLGHgCofEYXVSmI5 .error-text{f…

Spring Boot 单体应用升级 Spring Cloud 微服务

作者&#xff1a;刘军 Spring Cloud 是在 Spring Boot 之上构建的一套微服务生态体系&#xff0c;包括服务发现、配置中心、限流降级、分布式事务、异步消息等&#xff0c;因此通过增加依赖、注解等简单的四步即可完成 Spring Boot 应用到 Spring Cloud 升级。 *Spring Cloud …

【Docker】Linux中使用Docker安装Nginx部署前后端分离项目应用

目录 一、概述 1. Nginx介绍 2. Nginx优势 3. Nginx的工作原理 二、容器创建 1. Mysql容器 2. Tomcat容器 3. Nginx容器 每篇一获 一、概述 1. Nginx介绍 Nginx&#xff08;发音为 "engine x"&#xff09;是一个开源的、高性能的 HTTP 服务器和反向代理服务…

[二]rtmp服务器搭建

[二]rtmp服务器搭建 一.测试二.使用Nginx搭建自己的rtmp服务器1.nginx是什么&#xff1f;2.环境准备 三、搭建过程1.安装编译 nginx 所需要的库2.下载 nginx-1.21.6.tar.gz3.下载 nginx-rtmp-module 4.解压5.编译6.启动nginx&#xff0c;检测nginx是否能成功运行7.配置nginx使用…

OpenCV-Python(47):支持向量机

原理 线性数据分割 如下图所示&#xff0c;其中含有两类数据&#xff0c;红的和蓝的。如果是使用kNN算法&#xff0c;对于一个测试数据我们要测量它到每一个样本的距离&#xff0c;从而根据最近的邻居分类。测量所有的距离需要足够的时间&#xff0c;并且需要大量的内存存储训…

uni-app小程序 uni.showToast字数超过两行自动省略显示不全问题

在实际开发过程中如果用户提交某些文件时&#xff0c;如果缺少某些条件我们要提醒用户缺少那些条件才能提交&#xff0c;但是如果我们用uni.showToast提醒的次数超过7个字的时候就会导致文字显示不全&#xff0c;达不到提醒的效果&#xff0c;这种时候我们就需要使用uni.showMo…

文心一言使用分享

ChatGPT 和文心一言哪个更好用&#xff1f; 一个直接可以用&#xff0c;一个还需要借助一些工具&#xff0c;还有可能账号会消失…… 没有可比性。 通用大模型用于特定功能的时候需要一些引导技巧。 import math import time def calculate_coordinate(c, d, e, f, g, h,…

springcloud +Vue 前后端分离的onlinejudge在线评测系统

功能描述&#xff1a; 本系统的研究内容主要是设计并实现一个一个在线测评系统&#xff08;OJ&#xff09;&#xff0c;该系统集成了博客、竞赛、刷题、教学&#xff0c;公告&#xff0c;个人管理六大功能&#xff0c;用户注册后登录系统&#xff0c;可以浏览本站的全部文章、发…

【JVM】并发的可达性分析详细解释

​ &#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;JVM ⛳️ 功不唐捐&#xff0c;玉汝于成 ​ 目录 前言 正文 可达性分析的基本原理&#xff1a; 根集合&#xff08;Root Set&#xff09;&#xff1a; 对象引用关系&#xff1a; 标记…

PyCharm 快捷键(Ctrl + R)正则表达式批量替换

目录 一、使用快捷键CtrlR&#xff0c;打开替换界面 二、输入替换格式 三、点击全部替换 一、使用快捷键CtrlR&#xff0c;打开替换界面 二、输入替换格式 在第一个框输入 (.*): (.*) 第二个框输入 $1:$2, 三、点击全部替换

spring boot学习第八篇:kafka监听消费

为了实现监听器功能 pom.xml文件内容如下&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLoc…

论文阅读:Vary论文阅读笔记

目录 引言整体结构图数据集构造Vary-tiny部分Document Data数据构造Chart Data构造Negative natural image选取 Vary-base部分 引言 论文&#xff1a;Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models Paper | Github | Demo 许久不精读论文了&#x…

Spring Boot 优雅实现统一数据返回格式+统一异常处理+统一日志处理

在我们的项目开发中&#xff0c;我们都会对数据返回格式进行统一的处理&#xff0c;这样可以方便前端人员取数据&#xff0c;当然除了正常流程的数据返回格式需要统一以外&#xff0c;我们也需要对异常的情况进行统一的处理&#xff0c;以及项目必备的日志。 1. 统一返回格式 …

linux 安装ffmpeg

一、下载 ffmpeg-4.3.1 下载地址&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1xbkpHDfIWSCbHFGJJHSQcA 提取码&#xff1a;3eil 二、上传到服务器root目录下 三、给ffmpeg-4.3.1 读写权限 chmod -R 777 /root/ffmpeg-4.3.1 四、创建软连接 1.进入/bin 目录 2.…

用js做个转盘

样式 <style>.wheel {position: relative;width: 400px;height: 400px;border: 1px solid black;border-radius: 50%;overflow: hidden;margin: auto;}.slice {position: absolute;left: 0;top: 0;width: 0;height: 0;border: 200px solid red;/* border-width: 100px 10…

Spring Boot整合Druid(druid 和 druid-spring-boot-starter)

引言 在现代的Web应用开发中&#xff0c;高性能的数据库连接池是确保应用稳定性和响应性的关键因素之一。Druid是一个开源的高性能数据库连接池&#xff0c;具有强大的监控和统计功能&#xff0c;能够在Spring Boot应用中提供出色的数据库连接管理。本文将研究在Spring Boot中…

Macos flatter(用于快速LLL)本地编译安装(解决安装过程各种疑难杂症)

flatter是一个开源项目&#xff0c;能大大提高LLL的速度&#xff0c;项目提供的安装文档适用于Ubuntu&#xff0c;但是在macos上安装&#xff0c;总会遇到各种各样的问题&#xff0c;这里记录下所踩坑&#xff0c;帮助大家快速在macos上安装flatter。 文章目录 1.安装依赖库&am…

Python使用HTTP代理进行网络测试和监控

在Python中&#xff0c;HTTP代理不仅可以用于网络爬虫&#xff0c;还可以用于网络测试和监控。通过使用HTTP代理&#xff0c;我们可以模拟不同的网络环境&#xff0c;测试应用程序在不同情况下的性能和稳定性。此外&#xff0c;我们还可以使用HTTP代理来监控网络流量和性能指标…

C语言编译和链接

翻译环境和运行环境 在ANSI C的任何一种实现中&#xff0c;存在两个不同的环境 .第一种是翻译环境&#xff0c;在这个环境中源代码被转换为可执行的机器指令 .第二种是执行环境&#xff0c;它用于实际执行代码 翻译环境 翻译环境是由编译和链接两个大过程组成&#xff0c;而…

npm run dev 启动vue的时候指定端口

使用的是 Vue CLI 来创建和管理 Vue 项目&#xff0c; 可以通过设置 --port 参数来指定启动的端口号。以下是具体的步骤&#xff1a; 打开命令行终端 进入您的 Vue 项目目录 运行以下命令&#xff0c;通过 --port 参数指定端口号&#xff08;例如&#xff0c;这里设置端口号…