侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

Apache禁止解析PHP、禁止指定user_agent、php配置文件

2023-09-26 星期二 / 0 评论 / 0 点赞 / 54 阅读 / 3699 字

Apache禁止解析PHP某个目录禁止解析PHP,是很有用的。特别是能够上传文件的目录。做网站安全的时候,这用的很多,比如某个目录可以上传文件,为了防止上传的文件有木马,所以我们禁止这个目录下面的访问

Apache禁止解析PHP

某个目录禁止解析PHP,是很有用的。特别是能够上传文件的目录。做网站安全的时候,这用的很多,比如某个目录可以上传文件,为了防止上传的文件有木马,所以我们禁止这个目录下面的访问解析PHP

禁止解析PHP

修改虚拟主机配置文件

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

加入以下配置:

<Directory /data/wwwroot/111.com/upload>    php_admin_flag engine off        <filesmatch "(.*)php">                Order Deny,Allow                Deny from all                Allow from 127.0.0.1        </filesmatch></Directory>

Apache禁止指定user_agent

有时我们受到CC攻击时,大部分访问都会是固定的user_agent(访问标识)。我们可以禁止特定的user_agent。或者禁止某些无用的搜索引擎蜘蛛访问,避免服务器负载过高。

Apache禁止指定user_agent

修改虚拟主机配置文件

#vim /usr/local/apache2/conf/extra/httpd-vhosts.conf<IfModule mod_rewrite.c>     RewriteEngine on     RewriteCond %{HTTP_USER_AGENT} ^.*curl.* [NC,OR]     RewriteCond %{HTTP_USER_AGENT} ^.*chrome.* [NC]     RewriteRule .*  -  [F]</IfModule>

NC表示不区分大小写OR表示或者,连接下一个命令。不加OR就是并且的意思警告:如果只有一条命令,并且在后面添加了OR选项,那么表示拒绝全部。RewriteCond %{HTTP_USER_AGENT} ^.Firefox/4.0. [NC] 限制FirefoxRewriteCond %{HTTP_USER_AGENT} ^.Tomato Bot/1.0 [NC] 限制tomato botRewriteCond %{HTTP_USER_AGENT} ^.Baizuspid/2.0 [NC] 限制百度

php配置文件

而php.ini 中常用的配置有如下:disable_functions

disable_functions的配置如下,php的禁用功能eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close

配置的是错误日志

vim /usr/local/php/etc/php.ini display_error=offlog_errors=onerror_log=/usr/local/php/logs/error.log第一个是页面显示错误信息,第二个是错误日志。第三个是错误日志的路径

如果错误日志路径不存在就

mkdir /usr/local/php/logs/

因为错误日志是apache写的,所以授权777

chmod 777 /usr/local/php/logs/

配置日志的格式,日志的级别

找到error_reporting= E_ALL & ~E_DEPRECATED & ~E_STRICTerror_reporting = E_ALL & ~E_NOTICE

配置完成,重启apache

/usr/local/apache2/bin/apachectl graceful

错误信息会在

ls /usr/local/php/logs/php_errors.log

配置安全选项,限制文件目录

找到 open_basedir =open_basedir = /data/www:/tmp 

在apache里也可以配置

打开虚拟主机配置文件

vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 

针对不通虚拟主机,指定目录

在虚拟主机配置里面添加一句

 php_admin_value open_basedir "/data/www/:/tmp/"

拓展

apache开启压缩

apache2.2到2.4配置文件变更

apache options参数

apache禁止trace或track防止xss

apache 配置https 支持ssl

广告 广告

评论区