
Apache サーバを立ててみました。
一応、普通に動いているのですが、サイト配下のフォルダにアクセスする際、
URLの最後のスラッシュを付け忘れるとドメインの www が除去されて、「ページが見つかりません」に
なってしまいます。
OK → http://www.example.jp
OK → http://www.example.jp/hoge/
http://www.example.jp/hoge でアクセス(最後のスラッシュを付けない)すると
http://example.jp/hoge/ となってしまうのはなぜ?
Apacheの設定?
No.1ベストアンサー
- 回答日時:
としたときに通常はhogeというファイルがないので
404エラーを返すところ、301エラーでフォルダ情報をかえしてきます。
このときhttpd.confで指定されたServerNameを利用するので
その設定をしておかないといけません。
telnetでポート80にアクセスして手動でhttpの通信をトレースすると
挙動が理解できます
理由は理解できました。ありがとうございます。
telnet で確認しましたが、301 を見ることは出来ませんでした。
(普通に 404 のページが見えるだけ)
やり方がまずかったのかな?
私のやったログ
% telnet www.example.jp 80
GET /hoge[Enter]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>404 Not Found</TITLE>
</HEAD><BODY>
<H1>Not Found</H1>
The requested URL /webmail was not found on this server.<P>
</BODY></HTML>
Connection closed by foreign host.
あと、少し話しはソレますが、
http://www.example.jp/
と
http://example.jp/
を受付けるようにした場合、各々、そのままの形で配下のコンテンツを
見せるのが良いのか?
それとも http://example.jp/ は http://www.example.jp/ に
変換して、以降をブラウジングさせるのか?
が疑問になりましたが、この件に関しては知識不足なので勉強して出直してきます。
(アドバイス頂ける事に越した事は無いですがヒント頂ければ幸いです)
No.3
- 回答日時:
>telnet で確認しましたが、301 を見ることは出来ませんでした。
その、www.example.jp というのはサーバーの本名ですか?複数のホスト名が付いていて、VirturalHost機能で複数のサイトをサービスしている場合、お書きのアクセス(HTTP/0.9)だと本名のホストとしてのアクセスになります。
その場合は、HTTP/1.1でアクセスします。
GET /hoge HTTP/1.1
Host: www.example.jp
(空行)
ありがとうございます。
仰るとおり、VirtualHost です。
telnet の確認もOKでした。
さすが、「自信あり」の回答ですね。
高度なスキルを持った notnot 様、ならびに yambejp 様、
ありがとうございました。
No.2
- 回答日時:
>(普通に 404 のページが見えるだけ)
>やり方がまずかったのかな?
不安になって、ちょっと試してみましたが、私の環境では
Apache1.3系も2系も301エラーが返ってきてますね
環境依存の可能性は否定できませんが、特に設定をしなければ
301エラーを返すのがデフォルトだったと記憶しています
www.example.jpとexample.jpはサブドメインが異なるので、
一意性をたもつためにも完全に分けた方が間違いないのでは?
(仮にDNSがまじめに同じAレコードをかえしたとしても)
とくにクライアント側から見れば、キャッシュするファイルや
cookie情報などすべて別で管理されるのですから・・・。
あるいみexample.jpでアクセスされても返答しないくらいの
設定が好ましいような気がします。
> とくにクライアント側から見れば、キャッシュするファイルや
> cookie情報などすべて別で管理されるのですから・・・。
なるほど。気付きませんでした。
> あるいみexample.jpでアクセスされても返答しないくらいの
> 設定が好ましいような気がします。
ふむふむ。後は好みの問題になるのかな。
私の場合は example.jp でアクセスされたら www.example.jp にリダイレクト
が良いかな。(「同一のドメインのサイトにアクセスしに来た」という観点で)
ともあれ、大変勉強になりました。ありがとうございます。謝々。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MACアドレス 00:E0:C3 SAKAI って
-
エクセルで#N/Aを含めた平均値...
-
アウトルックで送信時に「名前...
-
エクセル #N/Aを印刷時に表示...
-
IPATにログインできません
-
Windows10 エラーメッセージ
-
循環参照にならない方法があっ...
-
検索をかけた時、ページを開け...
-
リモートデスクトップ接続でパ...
-
「DNSサーバーを自動的に取得す...
-
サーバーというのとメインフレ...
-
Ubuntu(zorin os)でパスワード...
-
ssl_error_logについて
-
loggerでmessagesに書き出す方法
-
postfixでユーザごとにメール送...
-
LinuxPCを社内LANと接続したい
-
パスワード変更を促すメッセー...
-
Real VNCが頻繁に切断されます
-
社内でプロキシサーバ(Squid)の...
-
sftpのバッチモード(Solaris)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで#N/Aを含めた平均値...
-
循環参照にならない方法があっ...
-
MACアドレス 00:E0:C3 SAKAI って
-
ドメインに参加しようとするとD...
-
プロファイルエラー
-
【QnapNAS】不良HDDと診断され...
-
マクロでのエラーについて
-
アウトルックで送信時に「名前...
-
エクセルVBA 関数エラー箇所を...
-
エクセル #N/Aを印刷時に表示...
-
MacでKCFErrorDomainCFNetwork ...
-
『ゼロサブネット』という言葉...
-
WSUSインストール時に設定ウィ...
-
Skype で検索時にエラーコメン...
-
CPUファン
-
CDManipulatorでのCCCDコピーに...
-
IEでランタイムエラーというの...
-
教えてgooサーバーエラー
-
クライアントが切断されました。
-
ロイロノートのエラーについて ...
おすすめ情報