Run nopCommerce on virtual directory on Azure - iis

I have been running DNN 7 on Azure using some store module that we have grown out of. We are in the process of moving our store to nopCommerce. But since we have so much content, other than the store on the DNN site, we would to explore keeping the DNN site and setting up a virtual directory with nopCommerce and run them both under the same domain name.
I have configured the virtual directory MyDNNPortal.AzwureWebSites.net/store to point to the physical folder "site_nopCommerce" and checked the "application" checkbox.
DNN works fine, but when trying to navigate to MyDNNPortal.AzwureWebSites.net/store, I get the following error:
"The page cannot be displayed because an internal server error has occurred."
This error is just those words in black on a white screen. It is not the typical IIS error.
I have customErrors set to off in both the DNN app and the nopCommerce app. I have the show detailed errors option checked in the Azure config for the DNN website. But that is the only error I get.
If I go to the LogFiles folder via FTP, there is an errorpage000001.htm page that sheds some more light:
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Error Code 0x80070003
Config Error
Cannot read configuration file
Config File
\\?\D:\home\site\_nopCommerce\web.config
Requested URL
http://mywebsite:80/store
Physical Path
D:\home\site\_nopCommerce
Any ideas? Is this structure possible (running nopCommerce in a virtual directory within a DNN site)?
I've seen this error on my localhost and then add IIS_USERS permissions to fix...but I am not aware of the ability or need to configure those types of permissions on Azure.

Related

SharePoint 2013 Central Administration

A few years ago we moved SP 2013 Central Administration to another box. Now we moved it back to original box (on a 2 wfe Farm) because box has hardware issues and needs to be replaced. The web config file is coming up with errors.
**Server Error in '/' Application.
Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed.
Details: To enable the details of this specific error message to be viewable on the local server machine, please create a tag within a "web.config" configuration file located in the root directory of the current web application. This tag should then have its "mode" attribute set to "RemoteOnly". To enable the details to be viewable on remote machines, please set "mode" to "Off".
Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's configuration tag to point to a custom error page URL.
Can I delete all files in virtual directory of this web config and have SharePoint wizard remake it? Is that a viable solution?

Website not working in IIS 7 using the IIS Manager

I have Microsoft Windows server 2008 R2 and have the IIS 7 running.
I have coded a web application on a seperate laptop and would like to publish it now on my server (serves as AD, DNS, File Server, IIS) that runs locally and has no external access. We will be using the application internally only.
I have followed the steps to install a website on IIS, however, it does not work. Below are the steps I have done.
Created a folder hierarchy and pasted the code files there. (check below image. The code files are inside wwwroot)
Create a new website from the IIS Manager as the below image.
The wwwroot folder has SYSTEM permission and it inherits the permissions from the parent. (Does it need to have other permissions?!?)
Whenever I visit the website, I get an error that the page is not found.
UPDATE
Upon #Ravi A's answer below, I have tried his steps as the below image, but the username is not found and the error persists.
Any ideas what is wrong?
windows iis website
You need to add a binding in your DNS i.e. ping mysite.local should resolve to the server IP, in your case since it's a intranet it should resolve to 192.168.1.253.
See here on how to do it. You need access to DNS Manager.
Also since you are not clear on DNS mapping leave the hostname empty and use machine name or IP to browse the site.

HTTP Error 500.19 - Internal Server Error Cannot read configuration file

I have been searching for this error all over the internet but no matter what I try to fix this problem nothing actually works. And the detailed message that I got after I copied a url from fiddler and put it in the browser and is as follows.
Module IIS Web Core
Notification BeginRequest
Handler Not yet determined
Error Code 0x80070003
Config Error Cannot read configuration file
Config File \?\C:\inetpub\wwwroot\myservices\web.config
Actually what has happened in the past that I had this service called "myservices" working all fine when I used visual studio to create a virtual directory for it in IIS. But then what I did, I tried to do a web deploy of this service in IIS and removed ("myservices" from Default Web Site tree which I had created by creating a virtual directory from within VS 2013). And what I observed is, that after I web deployed "myservices" it didn't work the same way as it was working previously when (I created a virtual directory for "myservices" in IIS through VS2013 but had it removed to see whether the web deployed version of it would behave the same way). Therefore when I analyzed the cause of HTTP error 500.19 through Fiddler (for the web deployed service) it said (Config Error Cannot read configuration file and
Config File \?\C:\inetpub\wwwroot\myservices\web.config) but when I physically try to look into the folder C:\inetpub\wwwroot I could never find myservices folder as such (what to talk of web.config file in it). Then I manually created a folder called "myservices" in C:\intepub\wwwroot directory and put my web.config file there to see if the web deployed service would still work, but it didn't. Then I removed this folder called "myservices" and obviously the web.config file inside of it and also removed the web deployed service from Default Web Site Tree.
And now after all this mess even if I go to visual studio and try to create a virtual directory for my service "myservices" (I can see it in Default Web Site Tree in IIS ) but it would throw the same error as http 500.19 as the web deployed version of this service. In other words whatever I tried it messed up my services even when it's not a web deployed version which previously was not the case. I literally request everybody out there to please guide/suggest me with whatever experience they have as to what went wrong in all this trial and error endeavor of mine.
Thanks
This may be a long shot, but sometimes web.config files get corrupted (our code repository occasionally does this) and you cannot see it with the naked eye. take a simple web.config file that you know is not corrupt and start rebuilding the file from there if it works. We have also used a hex editor (like XVI32) where we can see the corruption, but its much easier to rebuild from a fresh file.
If your problem is not the web.config but the virtual folders, then do the same methodology. Start over with what works and go from there. It could be the web deploy tool that is causing the corruption.
When nothing worked, all I did, was uninstalled IIS rebooted my machine re-installed it again and the HTTP 500.19 is gone.It seems like my IIS was corrupted.

IIS 7.5 HTTP 500.19 Internal Server Error Config invalid

I am using Windows 2008 R2 with IIS 7.5 and have mapped the source of my website to a network drive. When I do, the below error occurs. When pointing to the local c: drive the website works.
Error Summary
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Detailed Error Information
Module IIS Web Core
Notification Unknown
Handler Not yet determined
Error Code 0x80070003
Config Error Cannot read configuration file
Config File \\?\H:\ExcelAutomation\1.0\src\docs\web.config
Requested URL http://vmwws085381.msad.ms.com:80/index.html
Physical Path
Logon Method Not yet determined
Logon User Not yet determined
Config Source
-1:
0:
The solution for me was to open up IIS, click on my site, and under Advanced Settings change the physical path to the network share like \\server\share\.. instead of using the mapped drive.
Original source that helped me arrive to this solution is here: http://forums.iis.net/t/1157959.aspx
Another cause is not having the URL Rewrite Module installed if your web-app references this in the associated Web.config file – this is detailed in this Stack Overflow Question
The IIS server and the server with the shared folder must each have an account with the exact same username and password. Make sure this account has "Read & Execute", "List folder contents", and "Read" access to the shared folder.
Connect within IIS using UNC. (E.g., add a virtual directory to the site; enter an Alias; enter the physical path as \servername\foldername; click "Connect As..."; choose "Specific User"; click "Set..."; enter the user name and password referenced in step 1.) Current versions of IIS do not support mapped drives. Don't waste your time trying to make them work.
Also, make a big mental (or written) note for yourself and other administrators: If you ever change the password for that account, do it on both servers and within the IIS connection.
For someone who is getting this error on your local system, it can happen when you share code across multiple servers or copy an existing project to a new location and it's virtual directory path still refers to an older path.
This happened to me as I was sharing a project on a Google drive and was accessing it from 2 different systems. (I know, Should've used version control system)
Solution:
Right click on the project >> Web >> Create virtual directory
It will probably show a prompt. Select Yes and you are done.
The main reason behind this error is the physical path i.e web site folder cannot be under the users folder, desktop folder, or any related folder. If it's there, move it or place it on other drive and try again.

virtual directory not being configured as an application in IIS

hi i am comletly new to iis and asp.net i am trying to setup bugNET on a godaddy server. i created a virtual directory and once i tried to launch the site i get this error:
Parser Error Message: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS.
here is complete detail of what i did.
hosting: godaddy
created virtual directory (child folder of root) - named: devbunk with these settings (anonymous access, directory browsing)
that is all i can do to with iis on godaddy.
the error tells me that i need to turn the virtual directory as an application. godaddy doesnt let me do that... how do i do it? btw, i have iis7 setup.
You can configure this with Godaddy Hosting Control Center. log in to godaddy hosting center.
Go to Content >> IIS Management.
Click on the pencil icon to edit your selected directory.
you will get a popped up screen with three check boxes. You need to check the one that says "Set Application Root".
Click Ok and your directory will be configured as an application in IIS.
Hope this helps you and feel free to ping me if you need more info.
You need godaddy to do that, usually hosters do offer the ability to convert a regular folder as an application through their Control Panel, so if you have access to one search for that option. Other hosters give access through IIS Manager and Web Deploy to convert folders to applications as well, but it boils down to "you need your hoster to do that".
There are no ways for you to do that through Web.config or FTP or etc. I think Front Page Server Extensions did had a way as well. The best thing is contact your hoster and ask them what is the right way of doing this. Usually all hosters will allow you to create as many applications as you need as long as they run the same .net version.
Check the properties on Web.Config to ensure "Copy to Output Directory" is set to "Do not copy"

Resources