- PR -

VS2005 開発環境中のサイトを 他PCから表示できない

投稿者投稿内容
なぼな
ベテラン
会議室デビュー日: 2004/08/04
投稿数: 61
投稿日時: 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台だけがうまくいっているのか・・・

うまく動作しているマシンと設定など比較しましたが、
差分が見つかりません。しいて言えば、マシンのメーカが
違うくらいです。

よろしくお願いします
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-14 01:32
引用:

なぼなさんの書き込み (2006-02-13 17:46) より:

「アクセス権がありません・・・」のようなメッセージが表示されページが表示できません。


「のような」はやめて、一字一句正しく書いてください。

引用:

3台インストールして、1台だけうまくいってますが、
なぜか2台がだめなのか、なぜか1台だけがうまくいっているのか・・・
うまく動作しているマシンと設定など比較しましたが、差分が見つかりません。


何を比較したのかが判らないわけですが、インストールされているプログラムや、
その他のすべての構成まで本当に一緒なんでしょうか?

ユーザープロファイル自体の問題ではないですよね?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2006-02-14 08:27
引用:

「アクセス権がありません・・・」のようなメッセージが表示され
ページが表示できません。



ならきっと、アクセス権が無いんでしょう。

引用:

IISの設定も確認し、
 既定のWebサイト OK
 仮想ディレクトリの設定 OK
となっています。



仮想ディレクトリとして割り当てているフォルダのセキュリティ設定はどうなっていますか?

外部からWebにアクセスするアカウントが、↑のフォルダへのアクセス権を持っていなければ「アクセス権がありません。。。」というエラーになるのは道理です。
なぼな
ベテラン
会議室デビュー日: 2004/08/04
投稿数: 61
投稿日時: 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になるとそのようなフォルダが開発しているフォルダに
ありません。別のところにあるのでしょうけど・・・
nodera
大ベテラン
会議室デビュー日: 2003/09/08
投稿数: 200
投稿日時: 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
--------------
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-02-14 10:23
XP上でASP.NETが匿名アクセスが可能な状態で実行されている場合、
実行時のユーザはそのマシンのASPNETというユーザになります。
このユーザのアクセス権に注目してもう一度フォルダのアクセス権等を
確認してみてはどうでしょうか。

> 気になるのは、VS2002やVS2003の開発環境でプロジェクトのビルドを行うと
> 開発中のフォルダにバイナリーファイルらしき保存フォルダなどが作成されていたと
> 思うのですが、VS2005になるとそのようなフォルダが開発しているフォルダに
> ありません。別のところにあるのでしょうけど・・・

binフォルダ以下に作成されてたdllのことですかね?
それであればまったく気にする必要はありません。
VS2005では基本的にコードビハインドの部分も含めてすべて動的に
コンパイルされて実行されるようになっています。
なぼな
ベテラン
会議室デビュー日: 2004/08/04
投稿数: 61
投稿日時: 2006-02-14 10:43
noderaさんありがとうございます!
できました!

インストール時を思い出して見ると、.NET FrameWorkが混在しているときが
ありました。あわてて、V1.1を削除したのですがそれが影響したのではないかと
勝手に反省しております。
IISの設定の部分で、「ASP .NET」タグで、バージョンを設定する箇所の欄が
なぜか空欄になっていたりしてました。
おそらく、DLLのエントリーポイントが変わらないためもしくはレジストリに
登録されているままであったため旧バージョンの状態になっていたか片手落ち
だったかではないかと思われます。

昨日MSサイトにアクセスし同様の問題を解決してくれそうなサイトを発見し
バッチまであったのでダウンロードしたのですが、結果なにも変わりませんでした。

noderaさんからいただきましたコマンドをバージョンだけ変更して実行したところ
regsvr32の部分ではエラーかワーニングのようなメッセージが表示されましたが、
いまのところ問題なく動作しています!(心配なのでPC再起動しましたが・・・)

大変勉強になりました!ありがとうございました!
ご教授いただきました皆様ありがとうございました!

どっとねっとふぁんさん:
 ご教授ありがとうございます。了解です。
 でも、
  >>VS2005では基本的にコードビハインドの部分も含めてすべて動的に
 >>コンパイルされて実行されるようになっています。
って、インタープリタですかね?これってパフォーマンスは出るのでしょうか?
 VB .NETって、中間ファイルを作成することにより、いろんな言語でもパフォーマンスを
 落とすことなくサービスができるようになると感じていたのですが、新しい技術
 でも導入されてたのですかね。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-14 11:36
引用:

なぼなさんの書き込み (2006-02-14 10:43) より:

って、インタープリタですかね?


違います、コンパイル型です。

引用:

これってパフォーマンスは出るのでしょうか?


"実行時までの" 時間がありますね。

引用:

VB .NETって、中間ファイルを作成することにより、いろんな言語でもパフォーマンスを
落とすことなくサービスができるようになると感じていたのですが、新しい技術でも導入されてたのですかね。


MSIL とか JIT とかで検索すると幸せになれるかもしれませんね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌

スキルアップ/キャリアアップ(JOB@IT)