Remove subdirectories from URL on IIS - iis

I currently have a website running on IIS Windows Server 2019.
The website's url is : https://mywebsite.com/Sub1/login
When i get to https://mywebsite.com i obiously dont get the connexion form.
I would like to get rid of /Sub1/login and turn into https://mywebsite.com.
I tried using URL Rewrite but i don't get the syntax. Could any please help me ? :)

As Lex Li said, you can do this by setting the default document.
In IIS Manager, click the server name node, and then scroll to locate the Default Document icon.
Double click Default Document.
In the Actions pane, click Add.
In the Add Default Document dialog box, type the full filename of the default page.(such as login.aspx)
Click OK.
But the premise is that your default page needs to be placed in the root directory. This way you can directly access your default page by typing https://mywebsite.com in your browser.
In addition, you cannot use the Rewrite operation to remove the path part of the URL, because Rewrite does not change the address in the browser.

Related

IIS - ignore/deny access to specific pages

I have hosted an asp.net project in IIS and I want to restrict logins to some pages/folders.
I want to restrict all the users to not open some directory files using url.
They have to be able to only access the localhost/mypage/home and localhost/mypage/login. but if I try something like: localhost/mypage/resources/importantNotes.json everyone can open it! So I want somehow to redirect/deny access to it.
Also I want to not "totally" ignore that typical path because I need that resources folder later in my code.
What I have tried:
HTTP-Redirect, this works well, it redirects to specific page but I loose total access to the files I have on that specific path!
I have also tried with filteringRules but still the same result, I loose total acces to that specific resource folder!
What should I try or what am I missing here?
Below is the approach to block accessing folder and its contents using the URL Rewrite module.
You could select your site, open the URL Rewrite module.
Click the Add Rules option, select Request Blocking rule template and click the OK button.
Set * as pattern.
Set {REQUEST_URI} as Condition input. Set /test_folder/ as pattern. You could modify it and specify your own folder name here.
Set Custom Response as Action type. set Status code as 403.
click the Apply button and restart the site.
Output:
To block files in the folder, you need to set the pattern as /test_folder/*.
Output:

Landing page throws 404 error but inside pages works

When I type the URL as www.example.com, it throws the following error message.
404 - File or directory not found. The resource you are looking for might have been removed, had its name changed, or is temporarily
unavailable.
but when I type the URL as www.example.com/index.cfm, it works. Please advise what can be the problem and how can I solve this issue.
When I open the URL www.example.com from the server, it throws different error message.
HTTP Error 404.17 - Not Found The requested content appears to be
script and will not be served by the static file handler.
TechNet has an article on this, what you want to do is add a default document. By default IIS doesn't look for .cfm files as "default" files like index.html, so you have to configure it to do that.
From TechNet:
With the GUI
Open IIS Manager and navigate to the level you want to manage. For information about opening IIS Manager, see Open IIS Manager (IIS 7). For information about navigating to locations in the UI, see Navigation in IIS Manager (IIS 7).
In Features View, double-click Default Document.
In the Actions pane, click Add.
In the Name box, type the file name that you want to add to the list of default documents and then click OK. This file name will be added to the top of the default document list.
Optionally, select a default document in the list and in the Actions pane, click Move Up or Move Down to change the file's precedence.
Optionally, select a default document in the list, and in the Actions pane, click Remove to remove any file names that you do not want to use as default documents.
With the CLI
To add a file name to the list of default documents, use the following syntax:
appcmd set config /section:defaultDocument /+files.[value=' string ']
The variable string is the file name that you want to add to the list. For example, to add a file named home.html to the default document list, type the following at the command prompt, and then press ENTER:
appcmd set config /section:defaultDocument /+files.[value=' home.html ']
To remove a file named home.html from the default document list, type the following at the command prompt, and then press ENTER:
appcmd set config /section:defaultDocument /-files.[value=' home.html ']
For more information about Appcmd.exe, see Appcmd.exe (IIS 7).

IIS7.5 default.aspx redirects to root, but only with www

I noticed that when entering my site in the browser as "www.mysite.com", that's exactly the way it stays, but when entering "mysite.com", it redirects to "www.mysite.com/default.aspx". Can anyone explain to me
How come the "www" doesn't show the default.aspx, although I haven't set up any url rewrites, and
how come the "www" behavior is different from the non-"www" behavior.
My goal is that the non-"www" should also not show the "default.aspx".
Thanks in advance!
Open IIS manager, here is link How to: Open IIS Manager
Next on left panel select you web site and double-click on "Default Document" icon
Here you can remove all default pages and add one you have desired.
You actualy don't have to have any default page.
Hope this helps!

Create user friendly alias for a sharepoint site

I have a test Sharepoint server running on a Windows 7 machine. The url is http://liu-t500-01 and i want to create a user friendly alias http://temp for it. i have added
127.0.0.1 temp
to my hosts file (an A/host entry) and i have also created an alternate access mapping in Central Administration
http://liu-t500-01 Default http://liu-t500-01
http://temp Intranet http://temp
However when i try http://temp in the browser the sharepoint site does not come up. This is probably a simple problem but has me scratching my head...what did i do wrong?
Changing the IIS binding only will cause errors. You need to modify the alternate access mappings in SharePoint. There are tons of good articles our there that tell what to do in detail.
Here is just one: http://technet.microsoft.com/en-us/sharepoint/Video/ff679917
Try adding a host header in IIS
In IIS click on your site
choose the Bindings action
Click Add
In the Host Name field enter "temp"
click OK

Redirecting a domain using IIS

I am currently having two domains www.xyz.com and www.pqr.com. If anybody enters xyz.com I need to bringout the website pqr.com
Both are on the same server.
Kindly suggest how to go about this.
Thanks
In internet services manager, right
click on the file or folder you wish
to redirect then select "Properties"
Select the radio titled "a redirection to a URL".
Enter the redirection page
Check "The exact url entered above" and the "A permanent redirection for this resource"
Click on 'Apply'
From http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/6b855a7a-0884-4508-ba95-079f38c77017.mspx?mfr=true
To redirect requests to another Web
site or directory
In IIS Manager, expand the local computer, right-click the Web site or
directory you want to redirect, and
click Properties.
Click the Home Directory, Virtual Directory, or Directory tab.
Under The content for this source should come from, click A redirection
to a URL.
In the Redirect to box, type the URL of the destination directory or
Web site.
If you want to say that "you should always go to foo instead of bar," you want a 301 redirect (which you do with your front-end server). See http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=93633
A 302 (temporary) redirect should be used in cases where you can't serve a page, but expect it to come back later. Unfortunately, it's the redirect that you get from JSP forward.
A client-side (meta refresh or javascript) redirect should be avoided whenever possible.
Apache docs for configuring a permanent (or temporary) redirect.
If you want pqr.com to appear in the user's browser's address bar, you'll have to send a 301/302 redirect response, either through a script or through your web server's configuration - how to do this depends on what software you are using.
If you are using IIS7 and you have installed URL Rewrite Module then use this article for more information : IIS URL Rewrite – Redirect multiple domain names to one

Resources