- - PR -
VS2005 開発環境中のサイトを 他PCから表示できない
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-02-13 17:46
大変お世話になっております。
このたびVisual Studio を 2005へ移行しました。 若干コンポーネントの違いがあるくらいで開発を 続けましたが、次の現象が起きていて困り果てています× とても基本的なことなのですが・・・ ご教授お願いします。 開発環境 : Visual Studio 2005 VB .NET OS : WinXP Pro 開発環境の動作は問題ありません。 VS2003のときと同じように動作確認のため、他PCからアクセスしたときに、 「アクセス権がありません・・・」のようなメッセージが表示され ページが表示できません。 IISの設定も確認し、 既定のWebサイト OK 仮想ディレクトリの設定 OK となっています。 3台インストールして、1台だけうまくいってますが、 なぜか2台がだめなのか、なぜか1台だけがうまくいっているのか・・・ うまく動作しているマシンと設定など比較しましたが、 差分が見つかりません。しいて言えば、マシンのメーカが 違うくらいです。 よろしくお願いします | ||||||||||||
|
投稿日時: 2006-02-14 01:32
「のような」はやめて、一字一句正しく書いてください。
何を比較したのかが判らないわけですが、インストールされているプログラムや、 その他のすべての構成まで本当に一緒なんでしょうか? ユーザープロファイル自体の問題ではないですよね? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-02-14 08:27
ならきっと、アクセス権が無いんでしょう。
仮想ディレクトリとして割り当てているフォルダのセキュリティ設定はどうなっていますか? 外部からWebにアクセスするアカウントが、↑のフォルダへのアクセス権を持っていなければ「アクセス権がありません。。。」というエラーになるのは道理です。 | ||||||||||||
|
投稿日時: 2006-02-14 09:47
お世話になります。
じゃんぬねっとさん、渋木宏明(ひどり)さんありがとうございます。 まずじゃんぬねっとさんからの、比較対象ですが、 インストールされているもの、フォルダの設定やアクセス権など を比較して差がないことを確認しました。 ユーザプロファイルまでは確認していませんが、基本的にPCに対しては ADMINなので、制限がかかることはないと・・・ 渋木宏明(ひどり)さんからのコメントへ: 仮想ディレクトリに対してのアクセス権はとくになにもしていません。 しいて言えば、匿名アクセスと統合Windows認証にチェックがついて いるようです。 フォルダアクセス権かとも思い、仮想ディレクトのフォルダと その上のフォルダにEveryOneとIUSER_<<PCNAME>>にフルコントロールを 付加してみました。 いろいろやってみましたが、うまくいきません。 現在テストしたことです。 開発マシンと別マシンから下記URLでアクセスしてみました。 http://<<開発マシンIPアドレス>>/WebSite1/<<参照ファイル>> 1. 対象のフォルダにテキストを配置して、IEにてアクセスしたところ 問題なく表示できます。 http://<<開発マシンIPアドレス>>/WebSite1/aaa.txt 開発マシンと別のマシン両方で、テキストが表示されます。 2. 1.と同フォルダに保存してあるDefault.aspxに アクセスしました。 http://<<開発マシンIPアドレス>>/WebSite1/Default.aspx 開発マシンからアクセスすると 「IIS メタベースにアクセスできませんでした。」 と言われるようになりました。 別のマシンからアクセスすると、 「ランタイムエラー」、「Web.ConfigのcustomErrorsのmodeをoffにしてください」 といわれます。以前同様のメッセージが表示されoffしたのですが・・・ 単純なテキストだと表示できるので、IISの設定は問題ないのではないかと・・・ よろしくお願いします。 気になるのは、VS2002やVS2003の開発環境でプロジェクトのビルドを行うと 開発中のフォルダにバイナリーファイルらしき保存フォルダなどが作成されていたと 思うのですが、VS2005になるとそのようなフォルダが開発しているフォルダに ありません。別のところにあるのでしょうけど・・・ | ||||||||||||
|
投稿日時: 2006-02-14 10:05
こんにちは。
VS2005ではなくVS2003ですが、ちょっと前に同僚のマシンで同じようなメッセージが出たことがあります。以前は動作していたのですが、久しぶりにASP.NETでプログラムする必要が発生しアクセスしたところ「アクセス権が・・・」というような(自分もメッセージの詳細を憶えてないw)メッセージが表示され実行できませんでした。 で、アクセスできないのはASPXだけで、HTMLやテキストにはアクセスできたため、ASP.NETのIISマッピングの修復を試したところ、直ったことがあります。 一応試してはどうでしょうか? アンインストールと再インストールの方法を記述しておきます。 (MSのサイトに載っていたと思ったけど、どこだか忘れてしまった) VS2003(.NET Framework1.1)の方法なので、VS2003(.NET Framework2.0)では、バージョンフォルダはv2.0.50727(かな?)になるのかも。 -------------- アンインストール C:\windows\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -u regsvr32 /u C:\windows\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll 再インストール C:\windows\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i regsvr32 C:\windows\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll -------------- | ||||||||||||
|
投稿日時: 2006-02-14 10:23
XP上でASP.NETが匿名アクセスが可能な状態で実行されている場合、
実行時のユーザはそのマシンのASPNETというユーザになります。 このユーザのアクセス権に注目してもう一度フォルダのアクセス権等を 確認してみてはどうでしょうか。 > 気になるのは、VS2002やVS2003の開発環境でプロジェクトのビルドを行うと > 開発中のフォルダにバイナリーファイルらしき保存フォルダなどが作成されていたと > 思うのですが、VS2005になるとそのようなフォルダが開発しているフォルダに > ありません。別のところにあるのでしょうけど・・・ binフォルダ以下に作成されてたdllのことですかね? それであればまったく気にする必要はありません。 VS2005では基本的にコードビハインドの部分も含めてすべて動的に コンパイルされて実行されるようになっています。 | ||||||||||||
|
投稿日時: 2006-02-14 10:43
noderaさんありがとうございます!
できました! インストール時を思い出して見ると、.NET FrameWorkが混在しているときが ありました。あわてて、V1.1を削除したのですがそれが影響したのではないかと 勝手に反省しております。 IISの設定の部分で、「ASP .NET」タグで、バージョンを設定する箇所の欄が なぜか空欄になっていたりしてました。 おそらく、DLLのエントリーポイントが変わらないためもしくはレジストリに 登録されているままであったため旧バージョンの状態になっていたか片手落ち だったかではないかと思われます。 昨日MSサイトにアクセスし同様の問題を解決してくれそうなサイトを発見し バッチまであったのでダウンロードしたのですが、結果なにも変わりませんでした。 noderaさんからいただきましたコマンドをバージョンだけ変更して実行したところ regsvr32の部分ではエラーかワーニングのようなメッセージが表示されましたが、 いまのところ問題なく動作しています!(心配なのでPC再起動しましたが・・・) 大変勉強になりました!ありがとうございました! ご教授いただきました皆様ありがとうございました! どっとねっとふぁんさん: ご教授ありがとうございます。了解です。 でも、 >>VS2005では基本的にコードビハインドの部分も含めてすべて動的に >>コンパイルされて実行されるようになっています。 って、インタープリタですかね?これってパフォーマンスは出るのでしょうか? VB .NETって、中間ファイルを作成することにより、いろんな言語でもパフォーマンスを 落とすことなくサービスができるようになると感じていたのですが、新しい技術 でも導入されてたのですかね。 | ||||||||||||
|
投稿日時: 2006-02-14 11:36
違います、コンパイル型です。
"実行時までの" 時間がありますね。
MSIL とか JIT とかで検索すると幸せになれるかもしれませんね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |