我的网站使用直接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" />
没有区别。
最合适的回答,由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