所以我使用最基本的Axios设置在服务器上进行ajax调用。向同一服务器发送请求,没有外部干扰。
window.axios = require( 'axios' );
window.axios.defaults.headers.common = {
'X-Requested-With' : 'XMLHttpRequest'
}
var formData = new FormData;
formData.append( "name", "your name" );
axios.post('/request', formData )
.then(function ( response ) {
//Do stuff
}).catch(function (error) {
});
这是对端点的非常简单的请求,并且在我的本地测试服务器(Xampp,php7.3)上没有任何问题。
现在将代码推送到生产服务器,我遇到了403错误。 造成这种怪异的原因是,如果我在多个端点上运行它,有时会得到200状态,而有时会得到403。
当我调整Htaccess时,现在我为以前工作的人获得了500,而403返回了200。这让我发疯,任何帮助将不胜感激
Htaccess配置:
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^production.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.production.com$
RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) /public/$1 [L]
# PHP -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php73” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
</IfModule>
是的,由于我的自定义MVC框架,我的应用需要从公用文件夹中加载。
我尝试到处寻找日志,但找不到任何日志,因此后端代码不是问题。
要么是我没有正确使用Axios,要么是我的Htaccess有了新功能。
谢谢