The personal Blog of Chris Dempsey

Chris is a web developer working freelance in Ayr nr Glasgow, Scotland. Other business interests include Underground Grapics, a company that manufactures vinyl decals for modified cars.

Sunday 21 March 2010

Fixing Unable to find the socket transport "ssl" on Windows 2003

If you receive the error below, often seen when using the Zend Gdata library follow the instructions below to correct the issue.

Fatal error: Uncaught exception 'Zend_Gdata_App_HttpException' with message 'Unable to Connect to ssl://www.google.com:443. Error #24: Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?'

  1. run phpinfo(); to find the path to the loaded php.ini config file
  2. open the file and ensure extension=php_openssl.dll is not commented out
  3. restart IIS from command prompt with command iisreset

Saturday 20 March 2010

IIS 7.5 ASP Error

On freshly installed IIS 7.5 classic ASP website returns following generic error:

An error occurred on the server when processing the URL. Please contact the system administrator.

If you are the system administrator please click here to find out more about this error.

Issue is caused by IIS 7.5 being set by default to not send errors to the browser. To change open the relevant site in IIS, select ASP

Expand the Debugging Properties tree and set Send Errors To Browser to True. Then click Apply in the top right of the window.

IIS will now send errors to the browser allowing easier debugging. Sending errors to the browser is not recommended for production environments as it can give away information that you don't want to such as the path to an access database.

These settings can also be configured using the command-line tool AppCmd.exe with the following syntax:

appcmd.exe set config "Default Web Site" -section:system.webServer/asp /scriptErrorMessage:"An error occurred."

appcmd.exe set config "Default Web Site" -section:system.webServer/asp /scriptErrorSentToBrowser:"False"

Tuesday 2 March 2010

Error '80040211' - when CDOSYS email goes wrong

We had an issue on an asp shopping cart site over the past day after it was moved to a new server. Initially it wouldn't send emails out which was easily sorted as the new server doesn't have Jmail installed.

I switched it to CDOSYS instead but in my haste forgot that CDOSYS should be authenticated causing the following error:
error '80040211'
/includes/functions.asp, line 537
This was an issue because during the checkout process the shopping cart sends an email to the store owner and the customer but this was failing and people thought their order hadn't been taken. Worse still there is no error handling for this and customers were just seeing a white screen with a non descriptive error.

Fortunately the shopping cart software wrote all the order details to the database before the error occurred so we were able to contact those who thought their order had failed.

Moral of the story is not to migrate a busy website to a new server and not test it thoroughly.