强化IIS中的上传文件夹会损坏图像

时间:2018-05-29 作者:Ryan

我的网站使用直接URL从uploads文件夹加载一组图像,例如:

http://www.example.com/wp-content/uploads/some.image.png

我试图找出一个远程脚本执行问题,以及https://wordpress.org/support/article/hardening-wordpress/ 是为了防止在uploads文件夹中执行脚本,请使用.htaccess 文件:

# Kill PHP Execution
<Files ~ "\\.ph(?:p[345]?|t|tml)$">
   deny from all
</Files>
我的网站正在IIS上运行,因此为了获得相同的结果,我删除了uploads文件夹及其所有子文件夹的PHP处理程序:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.webServer>
        <handlers>
           <remove  name="php-7.1.7" />
        </handlers>
    </system.webServer>
</configuration>
然而,如果我使用网络。配置文件,使用直接URL加载图像会导致http 500错误。因此,主题无法正确加载。

在不破坏静态文件加载的情况下,如何防止在uploads文件夹中执行PHP脚本?

正在添加 <add name="StaticFile" /> 在下面<remove name="php-7.1.7" /> 没有区别。

1 个回复
最合适的回答,由SO网友:user141080 整理而成

我不知道这是否是正确的方法,但上次我使用IIS时,我使用了此代码来防止在uploads文件夹中加载PHP脚本。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <location path="wp-content/uploads">
    <system.webServer>
        <security>
            <requestFiltering>
                <fileExtensions>
                    <add fileExtension=".php" allowed="false" />
                </fileExtensions>
            </requestFiltering>
      </security>
    </system.webServer>
 </location>

</configuration>
如果尝试在uploads文件夹或子文件夹中执行PHP脚本,将导致404错误。

我希望它能进一步帮助你。

该主题的有用链接:

Translate .htaccess Content to IIS web.config - docs.microsoft.com

My WordPress web.config - saotn.org

结束