WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:'と"とLocationの関係

きんた [WriteDate : Mon Jun 11 23:48:35 2001]

この前Locationヘッダーでページを飛ばすCGIを作ってたんですけど、

$jump_url = 'http://www.domain.com';

print "Location: $jump_url\n";

のと

$jump_url = "http://www.domain.com";

print "Location: $jump_url\n";


では結果は動作結果が違いました。
"の場合は変数を展開して、'の場合は変数を展開しないのは知っていたのですが、
この両者で"と'ではなぜ動作結果が異なったのでしょうか?


The WAY [URL] [WriteDate : Tue Jun 12 01:24:09 2001]

スクリプト的には全く同等ですが、実際にどのように異なったのでしょうか。


けんじ [WriteDate : Tue Jun 12 11:28:49 2001]

えっと、’の場合、あのままではエラーがでました。しかし、”の場合はちゃんとジャンプしてくれたのですが…。なぜ’だとエラーが出るのかがよくわかりません。


きんた [WriteDate : Tue Jun 12 19:27:44 2001]

そうです。なぜかけんじさんやってみてくれたのですね。そのとおりです。'でやるとエラーがでるのがすごく疑問なんですが…。


ふじ [URL] [WriteDate : Tue Jun 12 20:52:04 2001]

具体的には、どの環境でどのようなエラーが出るのですか?

最初の書き込みで、下の例のほうの ; が全角になってるんですが、
そういうことじゃないですよね?


しなのむし [WriteDate : Tue Jun 12 21:06:04 2001]

改行が1個だからとか。


きんた [WriteDate : Tue Jun 12 22:46:50 2001]

;が全角になっているのは関係ないです。
試してみたのは自宅サーバーのapacheです。


ふじ [URL] [WriteDate : Tue Jun 12 23:43:57 2001]

で、具体的にはどのようなエラーが?
Internal Server Error ならエラーログを見るべきだし、
UA(ブラウザ)がエラーを出しているなら何がどのようなエラーを出しているのか
教えてくださいな。


itomasa7 [WriteDate : Wed Jun 13 01:46:24 2001]

いつもお世話になっております。〜中略〜

URL後方の改行は\r\nか\n\nがついているものとして、

>展開して、'の場合は変数を展開しないのは知っていたのですが
とあるのですが、

"〜"は展開するということは
Location: http://www.domain.com\n\n

'〜'は展開しないということは
Location: $jump_url\n\n  ← $jump_urlなんてURLはない、ないなのでエラーになる。

ということですか?


itomasa7 [WriteDate : Wed Jun 13 01:47:27 2001]

あ、すいません。
意味が違いました?

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]
ChaichanPAPA's World