·/usr/local/apache2/bin/apachectl -M:查看安装了哪些模块
·/usr/local/apache2/bin/apachectl -t:检查语法错误
·/usr/local/apache2/bin/apachectl -l:查看安装的库文件
·/usr/local/apache2/bin/apachectl graceful:重新加载配置
·/usr/local/apache2/htcocs 主页存放目录
·/usr/local/apache2/bin/apachectl 启动文件目录
·/usr/local/apache2/conf 配置文件路径
1.域名跳转
·网站可以设置域名多个域名别名,设置访问别名是跳转到主域名
·主域名为www.1.com别名为[url]www.a.com [/url],www.b.com 。访问别名时跳转到www.1.com
·301是永久跳转,302是暂时跳转,有多个域名要跳转与要加【OR】
在虚拟主机配置文件中加入:
1
2
3
4
5
6
vim /usr/local/apache/conf/extra/httpd-vhost.conf
<IfModule mod_rewrite.c>
RewriteEngine on 重写引擎 [开启]
RewriteCond %{HTTP_HOST} ^www.a.com $ 重写条件:是www.a.com 时
RewriteRule ^/(.*)$ www.1.com /$1 [R=301,L] 重写规则:跳转到www.1.com
</IfModule>
2.日志轮询(切割)
(1)Apache主配置文件中定义的日志格式,第一种是复杂格式,第二种是普通格式(工作中用复杂格式)
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
(2) 访问日志格式解释:
%h:客户机的IP地址
%l:客户机登陆名称
%u:认证用户
%t:访问的日期、时间
%r:客户访问的方式,访问的什么资源,什么协议
%>s 请求对应的状态码 (2开头正常,3开头被重定向,4开头客户端存在错误,5开头服务器端遇到错误)
%b:传送的字节数
% {Referer}:从哪个页面来的(比如从百度搜索到的QQ空间,那Referer就是百度)
%{User-Agent}:客户用的什么浏览器
(3) 配置日志切割:避免产生大文件, 可以每天生成一个
·在httpd.conf里定义日志格式,虚拟主机里只是调用日志格式
·/usr/local/apache2/conf/httpd.conf 中定义日志格式
·LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
·/usr/local/apache2/conf/extra/httpd-vhost.conf用rotatelog工具做日志切割时调用 1
2
3
·在虚拟主机配置文件中加入
CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/access_%Y%m%d.log 86400 " combined
·第一段:rotatelog工具路径 第二段:日志存放路径和命名(按年月日命名) 第三段:调用httpd.conf中的日志格式为combined格式
3.静态缓存
·定义图片、css、js、swf过期时间
·使用的模块:mod_expires.c
·在虚拟主机配置文件中加入:
1
2
3
4
5
6
7
vim /usr/local/apache2/conf/extra/http-vhosts.conf
<IfModule mod_expires.c>
ExpiresActive on 有效期[打开]
ExpiresByType image/gif "access plus 1 days" 过期的类型 ,访问超过一天
ExpiresByType text/css "access plus 2 hours"
ExpiresByType appliction/javescripts "access plus 2 hours"
</IfModule>
4.防 盗链
·防止网站的图片、文档、音乐等格式他人盗用链接,只允许指定的域名可以链接
·盗链:把别人网站上的一张图片,复制链接,然后发在自己的网站上,用户来访问自己网站承受负担和流量的是别人的服务器。
模板如下,定义的文件格式可自行添加:
1
2
3
4
5
6
7
8
9
10
<Directory /data/www>
SetEnvIfNoCase Referer "www.1.com" local_ref 定义访问的域名
SetEnvIfNoCase Referer "www.a.com" local_ref 定义访问的域名
SetEnvIfNoCase Referer "www.b.com" local_ref 定义访问的域名
SetEnvIfNoCase Referer "^$" local_ref
<filesmatch "txt|doc|mps|rar|zip|jpeg|png|jpg|gif"> 定义禁止盗链的格式
Order Allow,Deny
Allow from env=local_ref 这里设置规则,允许还是不允许
</filesmatch>
</Directory>
·使用curl -e 检测防盗链
·解释:域名是SetEnvIfNoCase 中定义的才可以访问filesmatch中定义的禁止盗链的内容
·注意:如果是上边定义的域名以外的域名会显示403错误
·其他网站使用盗链地址出现403错误,401错误是有用户认证 需要加 -u参数
5.某个目录下禁止解析php(防止看到源代码)
1
2
3
4
5
6
7
<Directory /data/www/uc_server>
php_admin_flag_engine off 关闭解析
<filesmatch "(.*)php"> 文件匹配是php结尾的
Order Deny,Allow 先拒绝后允许
Deny from all 拒绝所有
</filesmatch>
</Directory>
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com