我有一个基于Wordpress的网站,有一个额外的定制PHP应用程序,其中的文件位于自己的文件夹中——“员工”、“志愿者”等。我们在中有mod rewrite。htaccess文件,以便我们可以使用permalinks
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
我在“staff”文件夹中有一个特定的页面“form.php”,这给我带来了麻烦,特别是在Apache/php升级后,POST变量中的撇号似乎会导致问题,但我得到的不是php或SQL错误,而是Wordpress 404页面。如何更改该选项,以便开始故障排除?我不能禁用permalinks,该网站是实时的。
RewriteEngine Off
在里面“staff”文件夹中的htaccess不执行任何操作。
第一幅图显示了如果表单textarea变量有撇号加空格,会发生什么情况,第二幅图显示撇号本身不会导致问题。
非常感谢。
更新:我把它归结为字母、空格和撇号的特定组合
always rembember to \'select\'
- 给出一致的404错误always remember to \'salut\'
- 没有
所以我认为是保留查询词(?)再加上引起问题的撇号,如果我能将Wordpress排除在这个文件夹之外,我们就不会有任何问题了!
更新2:问题原来是Apache的一般错误-mod sec问题。然而,404页并没有生成403 forbidden(更容易进行故障排除),反而使故障排除过程变得复杂。