投稿日:2004年03月12日 作成鷹の巣

No.15147 localhostからはCGIは実行できるのに、同一LANのPCや外部アクセスができない



localhostからはCGIは実行できるのに、同一LANのPCや外部アクセスができない

No.15147 投稿時間:2004年03月12日(Fri) 10:27 投稿者名:かず URL:

はじめまして。
Apacheの設定などで自宅サーバーを構築するのは初めてで、いろいろわかりませんがよろしくお願いします。

---環境---
WindowsXP pro sp1
Apache2.0.39
PHP4.2.2
Perl5.8.0

現象ですが、CGIを使えるようにするまでは、外部からのアクセス・同一LANの他のPCからの
アクセスは可能だったのですが、CGIを使用できるように以下のドキュメントルートを変更
した結果CGIやPHPなどはサーバーであるPC(localhost)からはいつも通り動作確認できるのに、
外部からのアクセス・同一LANの他のPCからのアクセスでは、

Access Forbidden!
You don't have parmission to access the requested directory. There is either no index document or the directory is read-protected.
If you think this is a server error,please contact the webmaster

Error 403
192.168.XXX.XXX
03/12/04 10:18:42
Apache/2.0.39(Win32)mod_auth_sspi/0.9.0 PHP/4.2.2

というメッセージが出力されます。


この部分は、CGIを使用する前からPHPを動作していましたので、今回変更
しておりません。
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#DocumentRoot "C:/phpdev5/www/public/"
DocumentRoot "D:/www/public_html/"



今回CGIを使用するために変更したドキュメントルート
(ちなみにこの部分をコメントにすると、CGIは動かなくなりますが、
他のPCからのアクセスが可能となりました)
# This should be changed to whatever you set DocumentRoot to.
#
#<Directory "C:/phpdev5/www">
<Directory "D:/www/public_html">


うまく説明できないかもですが、よろしくお願いします。


サイトを表示するファイルはどこに置いているのですか?

No.15148 投稿時間:2004年03月12日(Fri) 10:44 投稿者名:stranger URL:

この説明では答えるのに推測になってしまうと思います
cgiはどこに置いているのですか?
サイトを表示するファイルはどこに置いているのですか?
apache の基本は DocumentRootを頂点にして解釈されるということ
aliasで指示されたものはDocumentRootの下にある解釈されます
DocumentRoot "D:/www/public_html/" に変更したら
"C:/phpdev5/www/public/"を読みにいきません


cgiもサイトを表示(したい)ファイルも D:/www/public_html/ に置いております。

No.15149 投稿時間:2004年03月12日(Fri) 12:19 投稿者名:かず URL:

strangerさん。早速の返信ありがとうございます!

> この説明では答えるのに推測になってしまうと思います
> cgiはどこに置いているのですか?
cgiは D:/www/public_html/ に置いております。

> サイトを表示するファイルはどこに置いているのですか?
サイトを表示(したい)ファイルも D:/www/public_html/ に置いております。


追記といたしまして、Access Forbidden! のエラーになるファイルはhtmlを
読みに行ったときにもでます(CGIを使用していないファイル)

説明不足で申し訳ないです。よろしくお願いします。m(__)m


Allow from とかで 制限してませんよね。

No.15152 投稿時間:2004年03月12日(Fri) 17:37 投稿者名:stranger URL:

> strangerさん。早速の返信ありがとうございます!
> > > この説明では答えるのに推測になってしまうと思います
> > cgiはどこに置いているのですか?
> cgiは D:/www/public_html/ に置いております。
> > > サイトを表示するファイルはどこに置いているのですか?
> サイトを表示(したい)ファイルも D:/www/public_html/ に置いております。
> > > 追記といたしまして、Access Forbidden! のエラーになるファイルはhtmlを
> 読みに行ったときにもでます(CGIを使用していないファイル)
> > 説明不足で申し訳ないです。よろしくお願いします。m(__)m

Allow from とかで 制限してませんよね
詳細がわからないのでなんともいえません
もう一度設定を見直して下さい


Allow from allとすることで、外部からの参照が可能となりました。

No.15157 投稿時間:2004年03月12日(Fri) 22:33 投稿者名:かず URL:

> Allow from とかで 制限してませんよね
> 詳細がわからないのでなんともいえません
> もう一度設定を見直して下さい

もう一度設定を見直すと、
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from localhost 127.0.0.1
となっていたため、

# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
とすることで、外部からの参照が可能となりました。
適切なご指示大変参考になりました。
strangerさんありがとうございました。


|目次|掲示板|過去ログ目次|▲頁先頭|