(工作中)Apache常见配置

2023-11-11

# Apache配置

1、设置静态文件过期时间为1天

<ifmodule mod_expires.c>
    ExpiresActive on
    ExpiresBytype text/css                  "access plus 1 days"
    ExpiresByType text/javascript           "access plus 1 days"
    ExpiresByType application/x-javascript  "access plus 1 days"
    ExpiresByType image/*                   "access plus 1 days"
</ifmodule>

2、开启gzip压缩

<ifmodule mod_deflate.c>
    DeflateCompressionLevel 6
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE text/javascript
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/x-javascript
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    #SetEnvIfNoCase Request_URI .(?:html|htm)$ no-gzip dont-varySetEnvIfNoCase
    #SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
</ifmodule>

3、配置/upload附件目录

#不代理upload路径
ProxyPass /upload !

4、访问附件目录/upload,不要提示403禁止,提示404不存在,防止泄露站点结构。

#访问/upload路径不提示403禁止错误,提示404不存在。
RedirectMatch 404 ^/upload/$

5、禁用TRACE方法

修改httpd.conf文件,添加如下代码,重启。

TraceEnable off

6、设置首页重定向

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/$ /sso/ [R=permanent,L]

7、设置proxy超时时间

Timeout 600
ProxyTimeout 600

Apache项目配置

程序目录:/usr/local/apache2

配置
主配置文件:/usr/local/apache2/conf/httpd.conf

虚拟主机配置:/usr/local/apache2/conf/vhost

一个项目一个域名一个配置。

增加域名
脚本:/root/vhost.sh

root@ubuntu:~# /root/vhost.sh
Please input domain:
(Default domain: www.qq.com):

运行脚本,输入需要添加的域名例如www.qq.com,结束后会在/usr/local/apache2/conf/vhost生成www.qq.com.conf配置文件。配合tomcat修改以下两段的IP和端口。

ProxyPass / ajp://192.167.162.100:8009/
ProxyPassReverse / ajp://l92.167.162.100:8009/

新增域名添加解析后网址类似如http://www.qq.com:120/。网站目录是/home/wwwroot/www.qq.com,日志是/var/log/apache2/www.qq.com-access_log。

重启apache2

/etc/init.d/apache2 restart

Apache服务器方法DoS

Apache服务器对拒绝服务攻击的防范主要通过软件Apache DoS Evasive Maneuvers Module来实现。

使用Linux命令防范Dos攻击

netstat -na |grep - "服务器IP地址:80" |awk '{print $6}' | sort | uniq -c | sort -n 

这个命令会自动统计TCP连接的各个状态的数量,如果syn_recv很高的话,就不能排除有基于TCP协议的拒绝服务攻击的可能。于是需要打开tcp_syncookies.

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

如果没有/proc/sys/net/ipv4/tcp_syncookies,说明内核不支持syncookies,需要重新编译内核,同时降低SYN重试次数

echo "1" > /proc/sys/net/ipv4/tcp_syn_syncookies
echo  "1" > /proc/sys/net/ipv4/tcp_synack_syncookies

同时加大syn_backlog,以保证用户的访问:

echo "2048" > /proc/sys/net/ipv4/tcp_max_syn_syncookies

利用LDAP对Apache进行认证

建立测试网页

#mkdir /var/www/html/ldap
#echo "LDAP Auth Test Page" > /var/www/html/ldap.html

安装mod_authz_ldap模块
要让Apache服务器可以存取LDAP服务器上的资料,必须利用mod_authz_ldap模块作为Apache和LDAP服务器之间认证的接口,所以必须mod_authz_ldap模块。

#rpm -ivh mod_authz_ldap*.rpm

修改/etc/httpd/conf.d/auth_mysql.conf
若之前曾安装mod_auth_mysql认证模块,则必须将mod_auth_mysql模块功能关闭

#LoadModule mysql_auth_module modules/mod_auth_mysql.so

修改/etc/httpd/conf.d/authz_ldap.conf
在这里插入图片描述
















本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

(工作中)Apache常见配置 的相关文章

随机推荐

  • Spring Boot、Dubbo项目Mock测试踩坑与总结

    本文是对Spring Boot Dubbo项目进行Mock测试的总结与踩坑实录 搜索了一圈 居然没发现类似的文章 莫非用Dubbo的朋友们都不Mock测试 或者有其他的办法测试吗 简单总结了一下 希望对大家能有一定参考意义 如果有更好的测试
  • 小影服务器维修,轩辕传奇2月27日所有服务器停服更新公告

    尊敬的轩辕勇士们 我们计划将于2月27日上午9 00 11 00期间对所有服务器进行停服更新 在更新期间 所有服务器的玩家将暂时无法进入游戏 停服更新结束后 所有服务器的玩家将更新到最新版本 版本号为 1 11 107 2 同时 官网会在更
  • 菜鸟的刷题之路之二叉树

    成功不是终点 失败不是终结 勇气才是启程的第一步 作者 不能再留遗憾了 专栏 菜鸟的刷题之路 本文章主要内容 将有序数组转换为二叉搜索树 二叉搜索树中第K小的元素和叶子相似的树的详细题解 文章目录 将有序数组转换为二叉搜索树 题目要求 做题
  • spring boot 整合dubbo2.7.8

    由于dubbo2 7 8之前的版本有漏洞 项目需要升级至2 7 8 之前用的是阿里的dubbo 在版本切换上遇到过一些问题 特记录一下心得 首先讲下dubbo的版本 dubbo在2 6版本是阿里在管理和维护 后面交给了apache管理 2
  • Linux(一):Linux入门

    概述 Linux 是一套免费使用和自由传播的类 Unix 操作系统 Linux 英文解释为 Linux is not Unix 同时基于多用户 多任务 支持多线程和多 CPU 的操作系统 目前很多企业采用CentOS 本文后续涉及到linu
  • Make sure ‘SystemCfg‘ is registered using qRegisterMetaType

    最近在编写Qt代码的时候遇到标题上的问题 现象是 在收到一个xml字符串需要解析时 我放在线程里面处理 然后线程执行完成后将xml对应的结构体返回给主线程 在主线程的槽函数中始终接收不到 但是在子线程中emit函数是执行过的 在调试窗口中看
  • github push时提示Username for ‘https://github.com‘ 解决办法

    今天进行push的时候一直提醒我输入Username还有PassWord 还出现提示 remote Support for password authentication was removed on August 13 2021 起初我以
  • 剑指 Offer 43. 1~n 整数中 1 出现的次数

    目录 编辑 一 问题描述 二 例子 三 题目接口 四 题目解答 1 暴力解法 2 规律解法 总结 代码 一 问题描述 输入一个整数 n 求1 n这n个整数的十进制表示中1出现的次数 例如 输入12 1 12这些整数中包含1 的数字有1 10
  • 在linux shell中使用ftp命令来实现自动上传与下载

    前段时间有个需求 需要利用crontab定时往某个FTP上传文件 原以为linux中带的ftp命令只支持交互式的操作 没法在命令行下使用 所以后来打算利用PHP中提供的ftp命令来做 但是很不幸的发现ftp模块不是PHP的标准模块 还需要自
  • JVM内存模型(通俗易懂)

    1 什么是jvm 1 jvm是一种用于计算设备的规范 它是一个虚构出来的机器 是通过在实际的计算机上仿真模拟各种功能实现的 2 jvm包含一套字节码指令集 一组寄存器 一个栈 一个垃圾回收堆和一个存储方法域 3 JVM屏蔽了与具体操作系统平
  • 第十二章 Vuex 状态管理

    12 1 Vuex 概述 官方文档 https vuex vuejs org zh Vuex 是一个专为 Vue js 应用程序开发的状态管理模式 它采用集中式存储管理应用的所有组件的状态 并以相应的规则保证状态以一种可预测的方式发生变化
  • 怎么在Eclipse上运行静态网页

    1 前言 习惯用Eclipse开发动态网站 现在有一个静态网页 只有Html Js CSS代码 无后台Java代码 想跑一下 自己通过网上查询然后自己也研究捣鼓了一下 发现有三种方式可以发布静态网页 2 通过Eclipse自带的三种方式 2
  • 运行软件报错msvcr100.dll丢失的解决方法,全面分析msvcr100.dll丢失问题

    随着科技的飞速发展 计算机已经成为人们生活和工作中不可或缺的重要工具 然而 在使用计算机的过程中 难免会遇到一些令人困扰的问题 如计算机丢失 msvcr100 dll 文件就是其中之一 本文将详细介绍计算机丢失 msvcr100 dll 的
  • 语义分割算法汇总(长期更新)

    语义分割算法汇总 记录一下各类语义分割算法 便于自己学习 由DFANet Deep Feature Aggregation for Real Time Semantic Segmentation开始 在文章中 作者说明了在Cityscape
  • Spring Cloud Gateway-ServerWebExchange核心方法与请求或者响应内容的修改

    前提 本文编写的时候使用的Spring Cloud Gateway版本为当时最新的版本Greenwich SR1 我们在使用Spring Cloud Gateway的时候 注意到过滤器 包括GatewayFilter GlobalFilte
  • 教你如何从服务器上下载图片

    博客摘要 Android中如何从网上下载图片 从网络获取图片过程 1 得到图片路径URL URL url new URL path 2 通过路径打开一个http的链接 HttpURLConnection conn HttpURLConnec
  • LeeCode 刷题 01 给定一个整数数组 nums 和一个整数目标值 target, 请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。

    public static int numtwo int params int sum Map
  • 【2023】华为OD机试真题全语言-题目0221-AI处理器组合

    AI处理器组合 题目描述 某公司研发了一款高性能AI处理器 每台物理设备具备8颗AI处理器 编号分别为0 1 2 3 4 5 6 7 编号0 3的处理器处于同一个链路中 编号4 7的处理器处于另外一个链路中 不通链路中的处理器不能通信 如下
  • Flink 使用技巧

    基本使用直接参照官方文档 https ci apache org projects flink flink docs release 1 9 dev connectors kafka html 以下分享以下我的个性化使用方式 1 Event
  • (工作中)Apache常见配置

    Apache配置 1 设置静态文件过期时间为1天