How to debug CGI 404

Posted on 2007-04-04
Last Modified: 2013-12-25
We have an old home-grown CGI application that has been running with no problem for many years.  I am in the process of reinstalling it on a new server. The old one is running windows 2000 server, the new one is 2003 server.

Unfortunately, I've never worked with CGI before. This CGI is an EXE file. When I run it in a cmd window I can see the HTML output. When it is referenced in a URL it generates a 403 error. I've set up the folder security as best as I know how (the non-CGI stuff displays OK).  The IIS log just shows the URL and the 403 error so that didn't help any. I tried to capture the output HTML from running the CGI and load that into the browser directly but that hung up the browser (IE6).

Since I don't really understand CGI yet, I'm looking for some debugging suggestions. Also, I did a filemon and the only thing that looked like a possible problem was that it was looking for some kind of "manifest" file that it couldn't find. Not sure if that is of any significance. I tried to look up how manifest relates to CGI but I didn't get anywhere.
Question by:adg
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Author Comment

ID: 18854126
I'm sorry - this is a 404 - Not found error, not 403 as described above.
LVL 48

Accepted Solution

Tintin earned 167 total points
ID: 18854265
What IIS setup have you done to allow CGI scripts to run?
LVL 19

Assisted Solution

by:Kim Ryan
Kim Ryan earned 167 total points
ID: 18854661
404 menas resource was not found. So the URL cannot be converted to a the .EXE program you wnat to run. Could be a problem with the wya the path is deined, the base cgi-bin (or public_html) area.
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users


Author Comment

ID: 18854692
Great question - sorry I forgot to mention it.  On IIS application configuration under home directory, configuration button on the default website I added an entry for exe and I pointed it at the cgi exe program itself. That didn't help so I did the same thing for the virtual directory that actually contains the exe. Still didn't help.  But I don't know how to verify that it is done correctly.

Author Comment

ID: 18854698
>> Could be a problem with the wya the path is deined, the base cgi-bin (or public_html) area.

That is what I thought, but....

1. Non-CGI html  in the same folder as the CGI program is picked up OK.

2. Does this mean that the problem is with the path to the CGI or is it with something the CGI is emitting? That is probably a dumb question but I just started learning CGI yesterday.
LVL 84

Assisted Solution

ozo earned 166 total points
ID: 18854723
> Non-CGI html  in the same folder as the CGI program
then how does your HTTP server tell whether or not it is a CGI program?
what does the configuration look like?

Author Comment

ID: 18854757
>> then how does your HTTP server tell whether or not it is a CGI program?

I don't know - aside from adding the entries that I mentioned above am I supposed to do something else?

I'm just saying that if I put a regular html page in the same (virtual directory as the exe file the browser gets to it ok. Regarding the configuration, aside from what I mentioned above,  I'm not sure what to say. Pardon my ignorance - can you ask me a more specific question?
LVL 19

Expert Comment

by:Kim Ryan
ID: 18855066
You can use IIS to see waht cinfiguration settings it has for
a) path toe executable (the cgi-bin) area
b) file associations (eg .exe is a program)
Not sure how to display it but there should be some online doc that comes with IIS

Maybe post this question in Web Servers/IIS topic area?

Author Comment

ID: 18855218
Unfortunately something has come up that takes precedence. Thanks for your consideration and assistance.

Featured Post

Guide to Performance: Optimization & Monitoring

Nowadays, monitoring is a mixture of tools, systems, and codes—making it a very complex process. And with this complexity, comes variables for failure. Get DZone’s new Guide to Performance to learn how to proactively find these variables and solve them before a disruption occurs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Email validation in proper way is  very important validation required in any web pages. This code is self explainable except that Regular Expression which I used for pattern matching. I originally published as a thread on my website : http://www…
In threads here at EE, each comment has a unique Identifier (ID). It is easy to get the full path for an ID via the right-click context menu. However, we often want to post a short link within a thread rather than the full link. This article shows a…
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question