Apache禁止解析php
需求背景:
為了避免網站某些目錄可以上傳文件的文件有木馬,所以我們要禁止某個目錄下面的訪問解析PHP。
[root@wjh5 ~]# vi /usr/local/apache2/conf/extra/httpd-vhosts.conf #進入虛擬主機配置文件#
加入以下配置:
<Directory /data/www/data> #對那個目錄設置不解析#
php_admin_flag engine off #禁止解析php的控制語句,off關閉#
<filesmatch "(.*)php"> #所有的php文件在做下Deny,要不它不解析,但可以下載,所以要禁止下#
Order deny,allow
Deny from all
</filesmatch>
</Directory>
[root@wjh5 ~]# vi /data/www/data/a.php #在data目錄下創建一個php文件#
[root@wjh5 ~]# curl -x127.0.0.1:80 http://www.456.com/data/a.php #curl測試403,無法顯示#
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /data/a.php
on this server.</p>
</body></html>
不配置測試:
[root@wjh5 ~]# curl -x127.0.0.1:80 http://www.456.com/data/a.php
php php[root@wjh5 ~]# #正常解析#
Apache禁止解析php