さて、私はここで何をしているのかほとんどわからないと言いましょう。これを必要以上に複雑にしている場合は申し訳ありませんが、
IIS6でしばらくセットアップしているWebサイトがありますが、問題なく機能しました。まったく同じサイトを使用して、Windows Server 2008 Enterprise32ビットでセットアップしてみました。
これが私が従ったステップです:
これでウェブサイトが読み込まれますが、2つの問題があります。
ウェブサイトを使おうとすると、いくつかの設定ファイルを編集するセットアップページがあります。これらのページを使用しようとすると、常にアクセス許可エラーが発生します(サイトの残りの部分は正常に機能します)。
構成ファイルのロード中にエラーが発生しました:パス 'C:\ inetpub\website\version\XXXXX.tmp'へのアクセスが拒否されました。 (C:\ inetpub\website\version\web.config)
権限を確認し、/ configフォルダーが読み取り専用に設定されていることを確認したので、チェックを外します。何も変わっていないようです。
IISフォーラムで、これらのアクセス許可の問題は、inetpubフォルダーに直接解凍したため、適切なアクセス許可が継承されなかったためであると読みました。そこで、マイドキュメントに解凍してから、提案されているようにそれをinetpubに移動しましたが、それは何もしなかったようです。
現在、権限は次のように設定されています。
だから誰かがそのエラーを取り除くために私が他に何をしなければならないか知っていますか?
これは、ユーザーアクセス制御の問題のように聞こえます。
UACをオンにすると、ローカル管理者としてログオンしても、Administratorsグループのメンバーにはなりません。 「管理者として実行」する場合にのみ、そのグループに「所属」します。したがって、「管理者として」メモ帳を起動すると、問題なくファイルを編集できます。したがって、答えは、UACをオフにするか、ユーザーアカウントにファイルへの明示的な変更権限を付与することです。はい、それは本当に迷惑です。
これで設定ファイルを編集する問題は修正されますが、アプリにもファイルを編集してもらいたいようです。これは少し危険に聞こえますが、アプリケーションにアクセスできるユーザーを制御している場合はおそらく許容できます。
最善のアプローチは、Webアプリをデフォルトのアプリプールではなく、独自のアプリケーションプールに配置することです。次に、アプリプールのIDを、デフォルトのネットワークサービスアカウントではなく、特定のユーザーアカウントに設定します。次に、そのアカウントに、特定のファイルやフォルダーに対する必要なアクセス許可を付与します。
UACが原因でシステムフォルダを変更すると、「アクセスが拒否されました」というメッセージが表示されます。 Windows Server 2008では、inetpubやsystem32などのフォルダーに変更を加えようとすると、マシンのAdministratorsグループのメンバーであるにもかかわらず、UACが起動し、変更を確認したことを確認します。
UACを変更しないことを強くお勧めしますが、[コントロールパネル]-> [ユーザーアカウント]-> [ユーザーアカウント]で設定を確認できます。アカウントを選択し、[ユーザーアカウント制御設定の変更]をクリックします。
HTH