【发布时间】:2020-03-07 22:05:40
【问题描述】:
我有一个代码(用 codeigniter 编写)在 cakephp webroot 目录内的子域上运行,代码是用 codeigniter 编写的,当发送带有一些输入值的发布请求时它工作正常,但是当值更改为其他值时,它返回 403 错误。如果出现 403 错误,服务器不会将请求交给 codeigniter 的 main index.php。尝试大量调试,但似乎没有任何效果。似乎 apache 发送 403,但我无法弄清楚是什么原因造成的。
我已经对 .htaccess 进行了更改,并使用 phpinfo() 验证了更改,但没有任何效果。谁能指导我。提前致谢
我尝试过的:
我尝试检查错误日志文件,它只是说“找不到文件 [/home2/maindomain/subdomain/app/webroot/403.shtml]"
还尝试在主 index.php 中打印请求,没有得到任何东西 当它抛出 403 时,在成功的情况下它会显示堆栈跟踪或什么 曾经我打印或回显。这表明在 403 的情况下,请求不是 交给index.php
正如您在 .htaccess 中看到的,我已更改内存和时间限制, 但仍然没有效果 PHP版本:5.6
从浏览器控制台,请求相同,没有变化,只是变量 值变化,cookie 和其他所有东西都一样
我还检查了 CSRF,它已关闭。所以检查了 config.php 的东西 好吧。
我也尝试在我的位置和错误日志文件中记录错误 什么都没有发生。
.htaccess 字段代码
AllowOverride 选项 允许覆盖所有 php_flag display_errors 开启 php_flag display_errors 关闭 php_value post_max_size 512M php_value memory_limit 512M php_value max_execution_time 300 php_value max_input_vars 10000 php_Value display_errors on php_value display_startup_errors on php_value upload_max_filesize 128M DirectoryIndex index.php 重写引擎开启 RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L]如果出现错误服务器响应为“禁止”
拒绝访问服务器上的该资源!"
成功时它是一个有效的 json。
【问题讨论】: