我有一个LAMP测试服务器(apache 2.4.25),为了测试http2我已经使用自签名证书配置了SSL。一切正常,除了Jquery Ajax请求完全通过http工作,但现在通过https它返回错误404.
php框架是后面的codeIgniter。
可能是导致问题的自签名证书吗? 它被视为跨域请求吗?
这里是ajax代码
//récup initiale des infos du panier de sélection
$.ajax({
url: base_url + 'ajax_selection/getNumItems/',
type: 'POST',
// csrf protection
data: {'<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'},
datatype: 'json',
error: function (jqXHR, textStatus, errorThrown) {
if (textStatus === 'timeout') {
alert("Problème de connexion : Vérifiez votre connexion internet");
} else {
throw "errorThrown : " + errorThrown + " | textStatus : " + textStatus + " | Error : AjaxContent has not a valid path";
}
},
success: function (data, jqXHR, textStatus) {
// notification de l'ajout à la liste de sélection
//console.log('selected Item '+data);//test ok
$('.link-selection').html(data);
}
});
我该如何处理这个问题?
感谢您的帮助
[编辑] 这是htaccess
# Toutes les autres URL vont être redirigées vers le fichier index.php.
#RewriteRule blog$ wp/index.php
#RewriteRule ^(.*)$ index.php/$1 [L]
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
# Redirection permanente des pages formation-motcle-annee vers /formation/motcle/annee
RewriteRule ^formations-([a-z]+)-([0-9]+).html /formations/$1/$2 [L,R=301]
RewriteRule ^formations-([a-z]+).html /formations/$1/$2 [L,R=301]
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)$ index.php?/$1 [L]
答案 0 :(得分:0)
从服务器添加Access-Control-Allow-Origin标头
Access-Control-Allow-Origin: (your website url)
它对我有用,我希望它也适合你。
答案 1 :(得分:0)
好的,我发现它与apache conf有关的问题,我错过了指令
AllowOverride All
在该部分中,抱歉&amp;谢谢你的帮助!