apache服务器搭建过程中需要注意到的一些问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chengyi_L/article/details/51423390

1.日志切分

windows:

利用自带工具 rotatelogs切分access.log和error.log


ErrorLog "|bin/rotatelogs.exe logs/apache_error-%Y-%m.log 86400"
CustomLog "|bin/rotatelogs.exe logs/access-%Y-%m-%d.log 86400" common


2.禁止显示目录列表

apache默认配置会显示目录列表。找到目录的配置项并修改:

将Options Indexes FollowSymLinks 修改为 Options FollowSymLinks 即可(删掉Indexes)


3.公共上传目录,禁止执行脚本文件

有些黑客会找到网站漏洞上传后门木马,如果木马是可执行程序的话,可能会导致网站挂掉。于是需要禁止公共目录的脚本执行

假设公共上传目录为Upload,则需要在apache配置中修改:

<Directory "D:/Uploads">
    <FilesMatch "\.(php|asp|jsp|js|aspx)$">
         Deny from all
    </FilesMatch>
</Directory>



这样可以阻止Uploads下所有可执行程序的运行


4.禁止包下载

网站对外开放后每天都会被人扫描,列如访问.rar,.zip,.sql,企图下载网站的代码以及数据库信息。在网站的根目录上对这些访问进行屏蔽即可


<Directory "D:">
<FilesMatch "\.(rar|zip|sql)$">
Deny from all
</FilesMatch>
</Directory>


5图片防盗链

其他网站如果直接引用网站的图片地址,会造成大量的外部请求,消耗服务器资源并占用网站带宽。故需要做防盗链配置 找到目录的配置项如:

<VirtualHost *:80>
    DocumentRoot "e:/yourdirectory"
    ServerName domain
    ServerAlias domain1 domain2 
    SetEnvIfNoCase Referer "^http://([a-zA-Z0-9]+).domain.com" local_ref=1
    SetEnvIfNoCase Referer "^http://domain.com" local_ref=1
    <FilesMatch ".(txt|doc|mp3|zip|rar|jpg|gif|png)">
    Order Allow,Deny
    Allow from env=local_ref
    </FilesMatch> 
</VirtualHost>




未完待续

上一篇:笔记:php curl请求头与服务端接收


下一篇:单点登录方式整理笔记