Scripts load as default document, but not when referenced directly - windows

Just fired up a fresh Windows Server 2008 instance on Amazon EC2 to begin messing around with the ColdFusion 10 beta and ran into an interesting issue.
This WORKS and properly renders the default index.cfm in the root:
mydomain.com/
This however DOES NOT work:
mydomain.com/index.cfm
Any .cfm file referenced directly within the url doesn't load but if referenced as the default document in a given directory does work.
Like I said, this is a fresh install with nothing outside of the ColdFusion 10 public beta installed along side IIS 7. Ideas?

This is a connector issue from within IIS. The IIS CFM Handler Mappings should have been taken care of during the installation process but apparently that didn't happen in this case. It's possible IIS is missing a feature (like ISAPI support) that the connector needs in order to function.
You can try re-installing (and thus re-running the connection process) or you may be able to use wsconfig directly to re-install just the connector bit:
ColdFusion10\config\wsconfig
... whatever is easiest for you.

Jordan is correct, this is a connector issue with CF10/IIS.
This question is similar to:
Coldfusion 10 on Windows 2k8 - .com/ loads OK but .com/index.cfm gives a 404
I posted an answer to that question that may be useful to others who find this question.
I had the same problem but the "Web Server Configuration Tool" (i.e. wsconfig) did not work for me. My answer to this other question provides info on how to manually install the connector in IIS 7.x.

Related

IIS Manager is installed but shows empty page

I hope this is the right place to ask. I was thinking serverfault might not be correct, since the computer in question is not a server. Feel free to migrate if StackOverflow is not right.
I usually install IIS on servers but have installed it on Workstations before. I actually had the same problem with another machine of the same model a few weeks ago but can't remember how I resolved it. I must have installed additional features or run some powershell-command that did not resolve the issue on this machine.
I installed IIS the correct way using the Windows Features, as described in the answers to this question. I've actually removed and reinstalled it since then, but it hasn't resolved my problem.
The WWW publishing service is running and I can open the IIS Manager, but it's completely empty, unlike here where the IIS Manager at least shows the local computer
When I type localhost into a browser I don't see the IIS Startpage, I get the error ERR_CONNECTION_REFUSED
You can see that all the required checkboxes are checked:
And the service seems to be running.
I've since tried installing IIS using
DISM:
Powershell:
And I checked the status using the iisreset command which was mentioned in the comments here (second linked question upstairs):
It restarts without any error and says everything is working fine.
Has anyone ever encountered this before or might know what I could try to get IIS actually working?
Edit:
I just noticed, while trying to uninstall IIS, that I can not uninstall it. I used Windows-Features and confirmed to reboot when prompted, but while rebooting Windows does a rollback and IIS is still available. So I can't even uninstall it.
Also just found this similar quesion on SuperUser. I'm still trying some suggestions there. So far to no avail.
Thanks for the comments.
I was on vacation, but a colleague was able to fix the problem.
Unfortunately, the solution was to reset Windows 11. He was then able to install IIS through Windows Features and it worked.
No idea why it didn't work in the first place, or why it got to this unrecoverable state. But now everything is fine.

Script works on Windows Server 2003 but returns error 0x8007000e on Windows Server 2012

I've a Perl script that forks in order to use Win32::OLE to extract PNGs of slides from a Powerpoint presentation. I'm in the process of migrating it from my old server (Windows Server 2003) to a new server (Windows Server 2012). The script works fine on the old server (which has Microsoft Office 2010) but on the new server (with Microsoft Office 2016), the script bombs with an error about there not being enough storage available:
Win32::OLE(0.1712) error 0x8007000e: "Not enough storage is available to complete this operation"
I've found quite a few references to this error code, but none particularly useful. Whilst this Microsoft support article says what the problem is and what to do to fix it, I have no idea why this is suddenly an issue now I'm moving to a different server and it doesn't seem to apply to my situation.
The new server has loads of spare disk space and RAM, so there should be plenty to go around. (The old server has far less of both, but that still works.)
Could this be something to do with the new server being 64-bit?
Could it be because of the differing versions of Office?
Could Apache or Perl be configured differently by default than when installed on the old server? (It's a new installation of each, but from the same source as on the old server, and I can't find any configuration that limits memory.)
One interesting point that leads me to believe that it's something to do with the script running via Apache (v2.4.27) is that if I run it from the command line (requiring a minor modification), it works fine. Apache runs as a service and I've tried running it as the same user for which it works on the command line, and that has no impact.
I've run out of places to look and things to try now, so any help would be appreciated.
UPDATE (21 August): Since nobody seems to have any ideas, I refactored my code slightly so that it gets called via a scheduled task. That works fine, supporting my theory that it's something to do with it being run via Apache. I'll keep this question open, partly in case a solution is presented and partly in case my workaround can help anyone else who has a similar problem.

403 Forbidden running MVC3 from VS2010

I've recently had a name change to my PC and rebooted. Before this change, I could run my MVC3 project from VS2010 using IIS 7. After the name change I getting:
Http Error 403 Forbidden Version Information: ASP.NET Development Server 10.0.0.0
I realise this could be a number of things so I'll try, in detail, to describe what's going on.
IIS
My IIS reverted back to v6 so I loaded 7 and set my DefaultAppPool to use .NET v4.0.
Security has all permissions for my account.
Request Filtering has 'Allow unlisted file name extensions checked (another answer on SO)
I'm using FireFox 24.0
VS2010 hasn't changed as far as I'm aware.
I'm not very familiar with IIS which, seems to me, is my problem so please bear this in mind if you decide to help. I'll gladly provide more information if needed.
thanks,
Paul
Do you actually have IIS7 installed or are you using IIS Express or Cassini?
I'm pretty sure that you'll be able to get things going again if you use the aspnet_regiis command.
Navigate to your .Net folder and run the following command aspnet_regiis -i
This isn't the answer but rather a different question. The problem wasn't IIS, the problem is with FireFox. I changed the default browser to Chrome and my app runs as it should.
Simple answer - I changed windows authentication password which wasn't updated in firefox. I changed the password to be in sync and it solved the issue.

Setting up a Mercurial server on IIS 6

I've set up a Mercurial server on a Windows 2003 / IIS 6 machine and when I try to pull the repository I get the following sequence
requesting all changes
adding changesets
adding manifests
adding file changes
transaction abort!
rollback completed
abort: premature EOF reading chunk (got 91303 bytes, expected 1542634)
I've tried pretty much everything I can think of, but with no success. I followed the steps of Jeremy Skinners guide on doing it for IIS7, but on an IIS6 server.
I found a post where the author was experiencing the same issue, but was unable to find a solution.
So far it looks like the solution is to migrate to Apache or upgrade to Windows 2008/II7 .. but if someone knows how to solve this, please let me know
I'll answer this one myself.
The problem turned out to be that there is a CGI script timeout of 5 minutes in IIS 6 (and below, not sure about 7) and this was what kept being hit. To change the timeout value you have to have the IIS 6 Resource Kit installed.
Once installed, start the MetaBase Explorer utility and navigate to \LM\W3SVC and locate the CGITimeout entry and change the value from the default 300 (5 minutes) to a higher value (I ended up using 20 minutes).
After changing the value I restarted IIS to make sure it was used by the server. Once this has been done, everything worked like a charm!
Cross posted on my blog
I haven't tried it yet, but there's this: Running Mercurial on Windows
If you scroll down to the "Windows Server 2003/XP" section, I think that should cover you for IIS 6.
Have you checked out Joel's tutorial? Maybe you'll find the answer there.

ASP.NET websites under IIS 7.5 (Windows 7) running extremely slow

I've just installed Windows 7 x64 Ultimate on my desktop PC. I installed IIS, Visual Studio 2008, registered ASP.NET, etc.
I have this ASP.NET 3.5 website I'm working on running EXTREMELY slow on this new IIS. On STA and PROD servers (Windows 2003 Server) and on my old XP/IIS 5.1 everything runs smoothly.
A page which usually takes 1-2 seconds to load is taking 8 seconds!!!
I saw this post on IIS forum. It says something about Vista/7 not pooling connections (just to let you know, the website is running locally but it's connecting to a SQL Server 2005 hosted on a remote server).
It seems that it takes a while to "start loading" the page... I mean, I click refresh and it stays for several seconds "Waiting for localhost"... Then when it gets response it loads the whole page normally...
I don't have a clue how to force Win7/IIS7.5 to pool database connections.
EDIT: I've created a new empty ASP.NET web application to see if the problems happens too. The answer is no, it responds fast as it should with an empty default page. Maybe is something related to the DB connection. I will do a further test. It should be a way to fix it...
EDIT 2: Debugging the app I noticed that the delay occurs AFTER the execution of .NET code (Page_Load, etc)... so the delay seems to be somewhere when IIS serves the page to the browser.
For those having the same problem, here's two possible solution.
1) Disabling IPv6 support in Firefox (only for Firefox)
Most of the authors that I found out about suggest this approach as quickest and cleanest solution. What you need to do is basically to open configuration settings in Firefox (about:config) and to change network.dns.disableIPv6 setting to true.
2) Change localhost settings in your hosts file (all browsers)
This came to me as an idea to check where and how can I interfere in IPv6 settings on my machine. I saw one of the comments on above mentioned sources saying that one can get rid of the problem by simply replacing localhost with machine name in the url.
It didn’t take me long to check and see that disabling my IPv6 localhost lookup does the same thing as disabling IPv6 directly in Firefox.
What you need to do is basically to comment / delete this particular line in your hosts file:
#::1 localhost
Note: ::1 notation is IPv6 equivalent of the IPv4 127.0.0.1 lookup address.
I believe the second solution might be more suitable for users who do not want to disable IPv6 in general, and the first one for all others that still do not use IPv6 in their regular work.
I was having the same issue: extremely dead slow site performance using IIS 7.5 on Windows 7 64-bit with a Core 2 Duo with 4GB RAM and 3 Application Pool Processes running only 1 website. Here's what I did to get the speed back to IIS, problem solved...
The trick for me was to run IIS using 32-bit workers, as instructed by Microsoft on IIS.net, which you can read here:
http://learn.iis.net/page.aspx/201/32-bit-mode-worker-processes/
Simple solution provided (I don't want to rewrite it here)... Either you can run a 1-line command from the Windows Command Prompt or a 1-line command from Windows PowerShell. I just ran it from the command line (make sure you open Command Line or PowerShell as Administrator -- right-click > Run as Administrator).
Thanks,
Marty McGee
You can try running multiple processes as application pools:
Open IIS
Click Application Pools
Right click the app pool for your app
and click Advanced Settings
Find the
"Maximum Worker Processes" and update
it to 3 (or the number of processes
you want to allow to run).
I know the op was running IIS 7.5 and this may not apply to him, but I'm posting this as it might help others running IIS Express 8.0. I had the same problem and none of the IPv6 or hosts file changes worked for me. My asp.net MVC4 project was really slow after hitting F5 to refresh js changes on localhost. It was happening across all browsers - Chrome, FF, and IE. Eventually I discovered that IIS Express 8.0 is extremely slow when serving up js files and seems to be a bug. If I ran iisexpress on the command line and hit F5 I could see each js file took 4 or 5 seconds to load.
I ended up uninstalling IIS 8.0 and installing IIS express 7.5 and straight away the problem was fixed. Here are the steps I followed:
Uninstall IIS express 8.0
Delete the IISExpress folder (on Win 7 it's in My Documents\IISExpress)
Install IIS express 7.5 (Link to IIS Express 7.5 download)
IIS Express 8.0 seems to be installed with VS 2012 so if you had a new install or possibly a service pack update this might upgrade the previous IIS Express version.

Resources