2012-02-15 8 views
1

私のページで、セッションを開始しようとすると、これらのエラーが発生します。PHP session_start()エラー

Warning: session_start() [function.session-start]: open(/var/chroot/home/content/*/*/*/***/tmp/(SESSIONID - Edited out), O_RDWR) failed: No such file or directory (2) in /home/content/*/*/*/*****/html/*******/index.php on line 3 
{Page Name} 
{Short 3 Word Description} 

Warning: Unknown: open(/var/chroot/home/content/*/*/*/***/tmp/(SESSIONID - Edited out), O_RDWR) failed: No such file or directory (2) in Unknown on line 0 

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct() in Unknown on line 0 

私はPHPを使用しています。ここに私のコードです:

<? 
ob_start(); 
session_start(); 
require('****.php'); 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>Title - edited</title> 
</head> 

<body> 
<div id="top"> 
<h1>title</h1> 
<h3>edited</h3> 
</div> 

</body> 

それは素晴らしいコードではありませんが、私がやったことです。助けて頂き、ありがとうございました。私はGodaddyとの共有ホスティングに差がある場合はそれを共有しています。

+0

編集していない、完全で完全なエラーメッセージを教えてください。ドメインを外に出すことはできますが、パスの*残り*が何であるかが分かっていると非常に便利です。あなたのWebホスティングプロバイダが['session.save_path'](http://www.php.net/manual/en/session.configuration.php#ini.session.save-path)の高度な形式を使用しているようです。セッションを保存するために必要なディレクトリ構造は作成していません。我々は、エラーの完全な言葉遣いなしには確信できません。 – Charles

+0

@Charles私は完全な言葉遣いがなければ私達が確信できないと私は同意しない。 "session.save_pathの現在の設定が正しいことを確認してください"というメッセージがすべて表示されます。 – Shea

答えて

2

セッションファイルは、読み出し/書き込み可能ではないように見えます...

は、次のコードを使用して新しいファイルを作成してください。それは間違っている何を教えてくれます:

<pre /><?php 
$path = session_save_path(); 
if (is_dir($path)) { 
    echo "directory exists\r\n"; 
    echo (is_readable($path) ? "directory is readable\r\n" : "directory is not readable\r\n"); 
    echo (is_writable($path) ? "directory is writable\r\n" : "directory is not writable\r\n"); 
} 
else "directory does not exist\r\n"; 

あなたはsession_save_path();を使用してパス保存独自のセッションを定義することができます。私はsession_save_path(getcwd().'/yourowndir');のようなものをお勧めします。 getcwdはあなたのスクリプトへの完全なパスを取得します。あなたはそれが読み書き可能であることを知っています。それ以外の場合は、 "yourowndir"ディレクトリを777にchmodする必要があります。

session_save_pathは、session_startの前に呼び出す必要があります。

補足として、私はGoDaddyのサポートを受け入れる価値があると信じています。彼らはプロのホスティングサービスです、それは明らかにPHP設定の問題ですので、それを修正する責任があるはずです。しかし、私はあなたのために仕事をしています。

+0

ありがとう!これは完全に動作します! – jbman223

関連する問題