3

私の運用環境にはルートがあり、私の仮想ディレクトリはルート内の /brazil フォルダーになります。

Web サイト プロジェクト (Web アプリケーションではない) を変換すると、Web サイト フォルダーがブラジルであるため、/brazil の Cassini で正しく動作し、IIS Express はサイトをルートに置きます。これを変更するにはどうすればよいですか?

4

1 に答える 1

4

IIS Express と Web アプリケーションで同様の問題が発生しています。私が見ているところによると、IIS Express では実際に「Project Url」フィールドでフォルダーを定義できますが、起動すると、1 つはフォルダーを含み、もう 1 つはルート アプリケーション用の 2 つの Web サイトを生成します。これの問題は、両方に同じフォルダーを使用しているため、web.config の継承の問題が発生することです。

私の解決策は、ホスティング ファイルを編集し、ルート仮想ディレクトリの physicalPath をシステム内の空のフォルダーに変更することでした。

例えば:

<site name="MySite1" id="1">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\VisualStudioProjects\2010\MySite1\MySite1" />
    </application>
    <application path="/ssd">
        <virtualDirectory path="/" physicalPath="C:\VisualStudioProjects\2010\MySite1\MySite1" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:59473:localhost" />
        <binding protocol="https" bindingInformation="*:44302:localhost" />
    </bindings>
</site>

これに:

<site name="MySite1" id="1">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\TEMP\New folder" />
    </application>
    <application path="/ssd">
        <virtualDirectory path="/" physicalPath="C:\VisualStudioProjects\2010\MySite1\MySite1" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:59473:localhost" />
        <binding protocol="https" bindingInformation="*:44302:localhost" />
    </bindings>
</site>
于 2012-02-08T18:51:52.127 に答える