2015-04-29 3 views
3

Я переместил свой сайт с apache на nginx, но теперь у меня есть проблема, что мой сайт не хочет отправлять файлы cookie (или запускать сеанс) моим пользователям, когда они пытаются для входа на веб-сайт.Cookies не работают, apache to nginx

Это мой журнал в сценарии:

<?php 
session_start(); 
include("includes/config.php"); 
$naam = mysql_real_escape_string($_POST["naam"]); 
$wachtwoord = md5(mysql_real_escape_string($_POST["wachtwoord"])); 

if (strlen($naam) > 0) 
{ 
if (strlen($wachtwoord) > 0) 
{ 
    $uQuery = mysql_query("SELECT * FROM users WHERE username = '".$naam."' AND password = '".$wachtwoord."' LIMIT 1"); 
    if (mysql_num_rows($uQuery)) 
    { 
     while($lid = mysql_fetch_array($uQuery)) { 
      $id = $lid["id"]; 
     } 
     $_SESSION["lid"] = $id; 
     header("Location: me.php"); 
    } else { 
     header("Location: index.php?error=1"); 
     } 
    } 
} 
?> 

Это то, что я использую для подключения к MySQL (Мой конфигурационный файл):

<?php 

$host = "ip address"; 
$username = "root"; 
$password = "password"; 
$db = "test"; 

$con = mysql_connect($host, $username, $password); 
if (!$con){ die('Verbinding mislukt: ' . mysql_error()); } 
$db = mysql_select_db($db, $con); 
if (!$db){ die ('Kan database niet vinden: ' . mysql_error()); } 
?> 

ли кто-нибудь знает, как это исправить?

Вот мой Nginx конфигурации:

# 
# The default server 
# 
server { 
listen  80 default_server; 
server_name ; 

#charset koi8-r; 

#access_log logs/host.access.log main; 

# Load configuration files for the default server block. 
include /etc/nginx/default.d/*.conf; 

location/{ 
    root /usr/share/nginx/html/shine; 
    index index.php index.html index.htm; 
} 

error_page 404    /404.html; 
location = /404.html { 
    root /usr/share/nginx/html; 
} 

error_page 404    /404.html; 
location = /404.html { 
    root /usr/share/nginx/html; 
} 

# redirect server error pages to the static page /50x.html 
# 
error_page 500 502 503 504 /50x.html; 
location = /50x.html { 
    root /usr/share/nginx/html; 
} 

# proxy the PHP scripts to Apache listening on 127.0.0.1:80 
# 
#location ~ \.php$ { 
# proxy_pass http://127.0.0.1; 
#} 

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
# 
location ~ \.php$ { 

    root   /usr/share/nginx/html/shine; 
    fastcgi_pass 127.0.0.1:9000; 
    fastcgi_index index.php; 
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
    include  fastcgi_params; 
} 

# deny access to .htaccess files, if Apache's document root 
# concurs with nginx's one 
# 
#location ~ /\.ht { 
# deny all; 
#} 
} 

Спасибо!

+0

PHP работал ранее, как вы говорите, так что это нормально. Вы должны предоставить нам конфигурационные файлы – yergo

+0

Все работает раньше, я использую ту же версию PHP. Я проверил связь между моим сайтом и сервером MySQL, и это работает хорошо. – RayR

+0

Я редактировал сообщение. :) – RayR

ответ

0

Спасибо за помощь. Я нашел исправление для этого. Куки папка для сохранения не был там и не имел право CMOD ..

Эта команда решить ее:

MkDir/вар/Библиотека/PHP/сеанс CHMOD -R 777/вар/Lib/php/session

Смежные вопросы