301是永久重定向

302是临时重定向

编辑虚拟主机的配置文件需要用到apache的rewrite模块

所以要用要先检查apache是否安装了rewrite模块

# ./bin/apachectl -M | grep rewrite

rewrite_module (shared)

# vim /usr/local/apache/conf/extra/httpd-vhosts.conf

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.aaa.com$ [OR]

RewriteCond %{HTTP_HOST} ^www.bbb.com$

RewriteRule ^/(.*)$ http://www.fansik.com/$1 [R=301,L]

</IfModule>

Apache日志切割

CustomLog "|/usr/local/apache/bin/rotatelogs -l /usr/local/apache/logs/discuz-access_%Y%m%d_log 86400" combined

Apache不记录以下结尾的内容

SetEnvIf Request_URI ".*\.gif$" image-request

SetEnvIf Request_URI ".*\.jpg$" image-request

SetEnvIf Request_URI ".*\.png$" image-request

SetEnvIf Request_URI ".*\.bmp$" image-request

SetEnvIf Request_URI ".*\.swf$" image-request

SetEnvIf Request_URI ".*\.js$" image-request

SetEnvIf Request_URI ".*\.css$" image-request

CustomLog "|/usr/local/apache/bin/rotatelogs -l /usr/local/apache/logs/discuz-access_%Y%m%d_log 86400" combined env=!image-request

Apache配置静态缓存

<IfModule mod_expires.c>
  ExpiresActive on
  ExpiresByType image/gif "access plus 1 days"
  ExpiresByType image/jpeg "access plus 24 hours"
  ExpiresByType image/png "access plus 24 hours"
  ExpiresByType text/css "now plus 2 hours"
  ExpiresByType application/x-javascript "now plus 2 hours"
  ExpiresByType application/x-shockwave-flash "now plus 2 hours"
  ExpiresDefault "now plus 0 min"
</IfModule>

加载好上面的配置后可用curl来检查一下哦

# curl -x127.0.0.1:80 'http://120.55.194.217/static/image/common/logo.png' -I

如果出现红字,说明配置成功了,缓存时间是86400秒

HTTP/1.1 200 OK

Date: Tue, 15 Mar 2016 06:10:29 GMT

Server: Apache/2.4.6 (Unix) PHP/5.6.6

Last-Modified: Tue, 08 Dec 2015 02:39:16 GMT

ETag: "1149-52659e1375d00"

Accept-Ranges: bytes

Content-Length: 4425

Cache-Control: max-age=86400

Expires: Wed, 16 Mar 2016 06:10:29 GMT

Content-Type: image/png

如果没效果记得查看一下模块的开关是不是打开了

Apache防盗链

SetEnvIfNoCase Referer "^http://.*\.discuz\.com" local_ref
SetEnvIfNoCase Referer ".*\.luntan\.com" local_ref
< filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png|js|css)">
    Order Allow,Deny
    Allow from env=local_ref
< /filesmatch>

Apache访问控制(只允许本机访问admin的管理页面admin)

<filesmatch "(.*)admin(.*)">

Order deny,allow

Deny from all

Allow from 127.0.0.1

<filesmatch>

Apache禁止解析某个目录下的php文件

<Directory /opt/discuz>

php_admin_flag engine off

<filesmatch "(.*)php">

Order deny,allow

Deny from all

</filesmatch>

</Directory>

Apache禁止指定user_agent

<IfModule mod_rewrite.c>

RewriteCond %{HTTP_USER_AGENT} ^.*curl.* [NC,OR]

RewriteCond %{HTTP_USER_AGENT} ^.*chrome* [NC]

RewriteRule .* - [F]

</IfModule>

Apache限制某个目录

<IfModule mod_rewrite.c>

RewriteCond %{REQUEST_URI} ^.*/tmp/.* [NC]

RewriteRule .* - [F]

</IfModule>

转载于:https://www.cnblogs.com/fansik/p/5552182.html

Apache常用配置项相关推荐

  1. webpack基础+webpack配置文件常用配置项介绍+webpack-dev-server

    一.webpack基础 1.在项目中生成package.json:在项目根目录中输入npm init,根据提示输入相应信息.(也可以不生成package.json文件,但是package.json是很 ...

  2. webpack基础+webpack配置文件常用配置项介绍+webpack-dev-server - QxQstar - 博客园

    一.webpack基础 1.在项目中生成package.json:在项目根目录中输入npm init,根据提示输入相应信息.(也可以不生成package.json文件,但是package.json是很 ...

  3. Pyecharts数据可视化之折线图(阶梯图、平滑曲线图、面积图)、K线图、常用配置项

    安装pyecharts pip install pyecharts -U 本次使用jupyter notebook编写代码 折线图 # 引入相关包 from pyecharts.faker impor ...

  4. 小程序全局配置文件以及常用配置项

    一.window常用配置 1.小程序根目录下的app.json文件时小程序的全局配置文件.常用配置项如下: ① pages 记录当前小程序所有页面的存放路径 ② window 全局设置小程序窗口的外观 ...

  5. Pyecharts数据可视化之柱状图、条形图、漏斗图,常用配置项

    安装pyecharts pip install pyecharts -U 柱状图 基本柱状图 本次使用jupyter notebook编写代码 # 引入相关包 from pyecharts.faker ...

  6. ECharts常用配置项

    ECharts常用配置 setOption()绘制图表 使用 echarts 实例的 setOption() 可以设置图表实例的配置项以及数据,万能接口,所有参数和数据的修改都可以通过 setOpti ...

  7. manifest文件的常用配置项

    manifest文件的常用配置项 接下来,我们介绍一下manifest文件中几个常用的配置项.每个配置项都有一个对应的命令行参数,同时,命令行参数的优先级是高于manifest文件中的配置项. 一个典 ...

  8. Vue中引入echarts的步骤,折线图、柱状图、饼图的常用配置项

    vue中引入echarts 一.安装echarts 二.引入echarts 1.全局引入 2.局部引入 三.vue中使用echarts 1.准备好函数 2.准备一个容器来放echarts 3.初始化容 ...

  9. eclipse properties 中文显示编码_JMeter点道为止系列(1)JMeter配置文件jmeter.properties常用配置项...

    前言 在%JMETER_HOME%bin(or $JMETER_HOME/bin)目录下(以JMeter5.2版本为例) 存在多个配置文件: jmeter.properties system.prop ...

最新文章

  1. 如何创建自己的composer包
  2. iOS开发Cocoapods执行命令pod setup,执行失败解决RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
  3. 20170908在线编程之圆周上问两点间的距离问题
  4. 2021-09-13冷启动问题主要分为 3 类,用户冷启动,即如何给新用户做个性化推荐物品冷启动,即如何将新的物品推荐给可能对它感兴趣的用户系统冷启动,即如何在一个新开发的网站
  5. 计算机图形学的学习心得,计算机图形学学习心得
  6. 重启tomcat服务器步骤
  7. 《遥感原理与应用》孙家抦版知识点总结(含简答题)——第一章
  8. 送示波器?送各色示波器设计!
  9. markdown pad2注册码(2017年9月27日)
  10. 产生一定范围随机数的通用表示公式
  11. 润和大数据负责人崔凯参加PostgreSQL中国技术大会
  12. 开发在线投票系统过程遇到的问题
  13. MessageBox confirm弹框确认和取消按钮的使用-回调
  14. Mac下使用imagemagick将PDF转长图
  15. 搭建视频会议系统OpenMeetings
  16. 微信小程序RSA非对称加密。
  17. 99%苹果手机用户被“大数据杀熟”,你中招没?
  18. 六、策略模式—旅行的交通工具 #和设计模式一起旅行#
  19. windows服务器日志文件定期清理,运维编排场景系列-----定时清理Windows服务器日志...
  20. 借“核高基”东风 打造国产数据库第一品牌

热门文章

  1. Linux vim显示/不显示行号
  2. Unable to open socket file: target process not responding or HotSpot VM not loaded The -F option can
  3. 使用@Autowired注入RedisTemplate时报java.lang.NullPointerException
  4. C++11:内联命名空间,无缝升级库代码
  5. Apache与Tomcat使用
  6. 一文带你了解java面向对象的三大特性:继承、封装、多态
  7. python安装email模块_Python使用SMTP模块、email模块发送邮件
  8. jQuery选择器介绍:基本选择器、层次选择器、过滤选择器、表单选择器
  9. 算法练习day4——190321(小和、逆序对、划分、荷兰国旗问题)
  10. inxtrackup mysql_雪糕 的动态 - SegmentFault 思否