如何使用.htaccess禁用脚本执行

时间:2012-11-16 10:59:49

标签: apache .htaccess security addhandler

这是我的虚拟主机配置文件

<VirtualHost *:80>
    ServerAdmin yo@my-domain.tld

    ServerName my-domain.tld
    ServerAlias www.my-domain.tld

    DocumentRoot /home/my-domain/public_html
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/my-domain/public_html>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost>

我想使用.htaccess在/ home / my-domain / public_html / uploads文件夹中禁用脚本执行;已经尝试了

AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
Options -ExecCGI

然后

AddType text/plain .html .htm .shtml .php .php3 .phtml .phtm .pl .py .cgi .js

然后

<Files ^(*.jpeg|*.jpg|*.png|*.gif)>
order deny,allow
deny from all
</Files>

和我发现的所有其他指令,但它们都不能阻止脚本执行。

apachectl -t -D DUMP_MODULES表示已启用并加载了mime_module

php_flag engine off是阻止执行php文件的唯一指令,但其他类型呢?以及为什么其他apache指令不起作用。任何想法......?

1 个答案:

答案 0 :(得分:2)

组: 所有目录中的AllowOverride无