DiscusWare, LLC.
Download Purchase Contact Us
Home
Support Home Documentation Knowledge Base Support Forums Support Request Advanced Services
Script Execution Error: config.*** location error

Procedures for diagnosing a Discus 'Script Execution Error' message that reports a config.*** location error.
Support Site Search
 

According to our experience, this error message will occur mainly in two situations. The error can occur when a customer is setting up a board for the first time on certain servers (mainly Windows) and the script directory setting was chosen incorrectly. It can also occur if the board has been running for a while successfully and then the web host changes the configuration of the server and thus changes the directory structure. This document assists with troubleshooting of this problem in both situations.

The following is an overview of what happens each time a Discus script is invoked (take for example discus.cgi). First, the script directory, as hard-coded into the script upon setup, is noted ($DCONF->{script_dir} = ... line). Then, the script attempts to obtain the CGI extension being used, first by looking at the perl variable $0 (which should be set to the name of the running script), or if that fails, by trying "cgi" and "pl" to see if config.cgi or config.pl exists in the current directory, or if that fails too, by reading all files in the current directory and looking for the config.* script. If all of these methods fail, the error message config.*** location error [2] will be returned. If you see this error message, it indicates a serious malfunction in your perl interpreter, and/or a missing config.* script in your script directory.

Assuming that the CGI extension can be correctly located (and for the remainder of this document we'll assume that the extension is "cgi" although it could really be anything valid), Discus then uses two methods to try to locate the config.cgi script. First, using the script directory hard-coded into the script, it sees if the file "(script directory)/config.cgi" exists. If not, it sees if the file "./config.cgi" exists (which means config.cgi in the current working directory). If config.cgi cannot be located in either of these ways, a config.*** location error [1] error will be returned. If you see this message, one of two things is wrong. Either the config.cgi script just isn't there, or the scripts can't find it. The first thing to check is to make sure that config.*** is actually there in that directory (if not, re-upload in ASCII mode from your distribution).

If you just set up your board

Some web hosts, especially on Windows servers, have begun to set up their machines to store the data on other servers via Windows file sharing. On your home network, you may be familiar with using files from other computers with a path such as \\COMPUTERNAME\SHARENAME\filename. It is possible that during your setup, depending on the web host, that the directory path suggestions were incorrect. Some customers have used a directory path such as:

/atl.hosting.int/storage/blah/blah/blah

... when in fact this is being obtained from a server via Windows file sharing, and the path should be ...

//atl.hosting.int/storage/blah/blah/blah

Note the extra "/" at the beginning of the path. If you suspect that your host might be using Windows file sharing, and you just set up your board, this is a good thing to try. (You could also ask your web host if they are using Windows file sharing on your content.)

If your board was working for a while

If your board was working for a while but now it has stopped, there is a good chance that your web host has reconfigured the server and changed the directory paths. Typically this will not cause a config.*** error - looking with the hard-coded script directory would fail but the "current directory" method should work. However, since you're receiving this error, the "current directory" method is not working, so you need to fix the script directory.

Fixing the script directory setting

The following procedure requires you to edit the Discus CGI scripts to insert the correct directory paths. Be sure that you create a backup copy of any files that you modify. Then use this procedure to fix the problem.

  1. Learn what the correct script directory is. If you still have the ftpdiag.cgi/ftpdiag.pl script on your server from your initial installation of Discus, you can look again. The script will report, in bold near the top, a directory path after "Your server reports seeing this script as:." Typically, this directory path plus "/discus" added to the end is the script directory for your board. You could also ask your web host what the correct, full path to your script directory is.

  2. Modify the diagnose.cgi script first. Download the script to your computer using ASCII mode with your FTP program. Open the file in a plain text editor such as Notepad. Locate the line that reads $DCONF->{script_dir} = 'SOMETHING';. Replace the script directory parameter with the full path to your script directory that you obtained in the following step. Now save this file and re-upload it to your server using ASCII mode. Set permissions to 0755 (rwxr-xr-x).

  3. Access the diagnose.cgi script with your browser (e.g. http://your.server.com/cgi-bin/discus/diagnose.cgi). See How to run the Discus program diagnostics if you need additional assistance finding the diagnostics. If you still see a config.*** error, start over at step 1, since you didn't choose the correct directory path or you didn't enter it correctly. Proceed only if your diagnostics do not report a config.*** error.

  4. Once your diagnose.cgi script has gotten past the config.*** error, you need to make the same fix as described in step #2 to all of the remaining Discus script files, except config.cgi/config.pl. Repeat step 2 for each of the Discus scripts to fix all of the directory paths.

  5. Access your board. If everything works, then great, you're done. At this point, you are likely to get a script execution error because discus.conf could not be found, in which case you should now proceed to this document for continued assistance.

Support Policy

DiscusWare knows nothing about how your server is actually configured, without the ability to access it. Thus, we are unlikely to be able to offer you any assistance beyond that which is presented in this document.

If you want us to log in to your server to fix this problem for you, we can provide you a quote. If you would like a quote, please click on "Support Request" above, fill out an e-mail support request, and indicate that you would like a quote for repair.


Download Purchase Contact Us
Privacy Policy
Copyright © 2005, DiscusWare, LLC, All Rights Reserved