人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPの質問です。

VertrigoServ(最新版)をインストールした環境でPHPを動作させています。
そこで、セッション機能を利用したページを作成したのですが、以下のような動作になります。

http://localhost/xxx.php … セッション機能が正常に動作
http://コンピュータ名/xxx.php … セッション機能が働かない

同じスクリプトなのに、コンピュータ名でアクセスした途端にセッションで値を保持出来なくなるのが疑問です。
解決法をご存じの方いらっしゃいましたらご教示いただければ幸いです。

●質問者: SOBA
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:http:// PHP アクセス インストール コンピュータ
○ 状態 :終了
└ 回答数 : 3/4件

▽最新の回答へ

1 ● km1967
●20ポイント

まずはお願いなのですが、

お使いのサーバのOSやWebサーバの名称、バージョンなど、

何も判らないと原因の特定は難しくなりますので、必須だとご記憶ください。


もしWindows系のサーバをご利用でしたら

「コンピュータ名」というのはマイクロソフト独自のものですので

Cookieの一種であるセッションは保存できません

◎質問者からの返答

そう言われてみれば説明不足でした。すいません。

VertrigoServ2.21 を WindowsXP SP3 にインストールしています。

ちなみにVertrigoServ2.21の内訳は以下の通りです。

Apache 2.0.63

PHP 5.2.6

MySQL 5.0.51b

SQLite 3.5.9

Smarty 2.6.19

PhpMyAdmin 2.11.7

ZendOptimizer 3.3.3

SQLiteManager 1.2.0

>「コンピュータ名」というのはマイクロソフト独自のものですので

>Cookieの一種であるセッションは保存できません

それじゃあ

http://localhost/xxx.php

http://IPアドレス/xxx.php

× http://コンピュータ名/xxx.php

ということでしょうか?


2 ● lizy
●40ポイント ベストアンサー

以下の2つの条件を満たしていますでしょうか。

この場合、アンダースコアを含んだサーバ名はRFC違反と言うことで、IEはcookieを格納しなくなります。従ってcookieに依存しているであろうセッション機能は動かなくなります。

この問題を回避するには、サーバ名を変更するか、IPアドレスでのアクセスが必要となります。

◎質問者からの返答

>アンダースコアを含んだサーバ名はRFC違反

あああああ

そうでしたそうでした

やっとすっきりしました。

ありがとうございました!


3 ● km1967
●20ポイント

それじゃあ

http://localhost/xxx.php

http://IPアドレス/xxx.php

× http://コンピュータ名/xxx.php

ということでしょうか?

そういうことです

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ