开发者

asp.net application default file Index.aspx

开发者 https://www.devze.com 2022-12-11 17:22 出处:网络
how can i make it that when i go to (for example) http://localhost:60288/ it does not show me a directory listing but rather opens the Index.aspx page? This works with http://localhost:60288/Index.asp

how can i make it that when i go to (for example) http://localhost:60288/ it does not show me a directory listing but rather opens the Index.aspx page? This works with http://localhost:60288/Index.aspx but i don't wish to have Index.aspx shown every time.

i also need links like http://localhost:60288/?a=1 to work like http://localhost:60288/Index.aspx?a=1 without the Index.aspx shown.

this used to work when i created a website project in visual studio, but now i'm using application projec开发者_JAVA技巧t. how can I set this up?

i want / need this to work for all sub folders as well e.g. http://localhost:60288/SubFolder/ should work as if it was linked to http://localhost:60288/SubFolder/Index.aspx

thnx

edit still did not manage it


Cassini (the built-in webserver used by Visual Studio) doesn't allow you to configure the Default Document that's used if you don't specify a filename in your URL. The 'Set as Start Page' option isn't the same thing, as you've found, since that only affects which page is first opened when you run the project, and doesn't affect subsequent page-loads.

However, Cassini does have a list of Default Documents - it just isn't configurable, and the list only contains "default.aspx" and "default.htm". The only way you could achieve what you want in Cassini is to rename all your "index.aspx" files to "default.aspx".


The easiest way for me to do this was to use a mapping. Inside your Web.config, insert the following:

<configuration>                                                                  
    <system.web>                                                                 
        <compilation debug="true" targetFramework="4.0" />                       
        <urlMappings enabled="true">                                             
            <add url="~/" mappedUrl="~/index.aspx" />                
            <add url="~/default.aspx" mappedUrl="~/index.aspx" />                
        </urlMappings>                                                           
    </system.web>                                                                
</configuration>            


Go into the IIS manager (in control panel - administrative tools)

Right click - properties on the default website

Documents tab - ensure that 'enable default document' is ticked, and that index.aspx is in the list of default documents, up the top preferably.

Home directory tab - make sure you've got an application created (application name shouldn't be blank). Click the 'create' button if you need to.

asp.net tab - check that you've selected the correct version of the framework that you want.

Let me know how you go.


You can remove or rename your index.aspx , so that it will show the directory listing when runs unless you set another page as start page.

For the second thing, u can use ASP.NET URL masking feature


You can use IIS Manager to set the Default document(s) for your site/application.

Cassini (the development web server integrated in Visual Studio) doesn't support the possibility to change the default document.

And yes, you do need to be an administrator to configure IIS.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号