アップデート:
.htaccess を使用して、ユーザーが私の Web サイトにアクセスしたときに、これらすべてのファイルを含む特定のフォルダー (/var/www/html/test) にユーザーをリダイレクトしていました。.htaccessは次のようになりました
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule (?!^test(/.*|)$)^(.*)$ /test/$1 [NC,L]
</IfModule>
すべてのファイルを /var/www/html に移動し、.htaccess 行にコメントしたとき..iphone のセッションが機能し始めました...理由がわかりません..htaccess でそれを修正する方法はありますか?
----更新終了-----
ユーザーログイン機能を呼び出す ajax 関数があり、ユーザー/パスワードが正しい場合は、ユーザーにログインします。デスクトップ、ラップトップ、samsung s3 電話では動作しますが、IPHONE では動作しません! IPHONE でセッションを設定していないように$this->session->set_userdata('current_email', $email);
見えるため、ユーザーをログイン ページにリダイレクトします。おそらく、iPhone Safari の Cookie が自動的に無効になっているなどの理由によるものだと思います。電話で動作するようにこれを回避する最良の方法は何ですか?
アヤックス:
$.ajax({
url: site_url+"/user/login/"+email,
type: "post",
data: 'password='+password+'&email='+email,
success: function(response){
if(response == "success"){
window.location.href = site_url+"/user/invites";
}else{
alert("Password is not valid");
}
},
error: function(){
}
});
/user/login php codeigniter 関数
public function login($email)
{
$password = $this->input->post('password');
if($email != NULL){
$this->load->helper('string');
$this->load->model('user_model');
$this->load->library('session');
$user_status = $this->user_model->check_status($email, $password);
if (is_array($user_status) && $user_status['is_active']) {
$this->session->set_userdata('current_email', $email);
$this->session->set_userdata('user_id', $user_status['id']);
$this->session->set_userdata('unique_id', $user_status['unique_id']);
$this->session->set_userdata('is_active', 1);
echo "success"; die();
}
} die();
}
/ユーザー/招待
public function invites($unique_id = NULL)
{
if($this->session->userdata('current_email') != FALSE){
$data['unique_id'] = $this->session->userdata('unique_id');
$data['current_email'] = $this->session->userdata('current_email');
if($data['unique_id']){
$data['invited_users'] = $this->user_model->get_invited_users($this->session->userdata('user_id'));
$data['user_details'] = $this->user_model->get_user_details($this->session->userdata('user_id'));
$this->template->write_view('header', 'templates/header2', $data);
$this->template->write_view('content', 'invites', $data);
// Render the template
$this->template->render();
}else{
redirect('welcome/index/1','refresh');
}