JLBN – Setup HTTPS SSL on WAMP

Hypertext Transfer Protocol over Secure Socket Layer or HTTPS is a URI scheme used to indicate a secure HTTP connection. It is syntactically identical to the http:// scheme normally used for accessing resources using HTTP. Using an https: URL indicates that HTTP is to be used, but with a different default TCP port (443) and an additional encryption/authentication layer between the HTTP and TCP. This system was designed by Netscape Communications Corporation to provide authentication and encrypted communication and is widely used on the World Wide Web for security-sensitive communication such as payment transactions and corporate information systems.

In this tutor guide for WAMP, we will show you how to create a self-signed HTTPS SSL certificate; then, how to implement this self-signed certificate into WAMP; then, obtain a FREE Trusted HTTPS SSL Certificate to replace the self-signed one.

[Read more…]

309 thoughts on “JLBN – Setup HTTPS SSL on WAMP

  • March 26, 2009 at 11:16 pm
    Permalink

    I had follow till step 41 – http://guides.jlbn.net/setssl/setssl15.html
    After i uncomment the 2nd line.My Apache service will automatically stop, and it cannot start already even i click to start again. It can only be start again when i undo step 41. Can help me into this? Thanks in advance.

    • March 25, 2009 at 7:51 pm
      Permalink

      Cata, you need to setup in .htaccess file and there are too many ways to do it, we can’t post example here

  • March 20, 2009 at 2:00 pm
    Permalink

    I removed everything, but index.php from the root (www). Then I restarted wampserver. Thie is the info taken from the bottom of the apache error.log and the access.log.

    apache_error.log:
    ————————

    [Wed Mar 18 03:57:15 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 04:27:23 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 04:57:43 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 05:27:50 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 05:58:10 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 06:28:30 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 06:58:50 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 07:29:10 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 07:59:56 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 08:30:04 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 09:00:10 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 09:30:43 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 10:01:03 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 10:31:46 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 11:02:09 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 11:32:42 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 12:03:02 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 12:33:49 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 13:04:47 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 13:35:07 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 13:53:29 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/favicon.ico
    [Wed Mar 18 13:53:36 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/favicon.ico
    [Wed Mar 18 14:05:27 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 14:35:50 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 15:05:54 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 15:37:21 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 16:07:25 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 16:37:46 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 17:08:06 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 17:38:13 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 18:08:45 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 18:39:32 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 19:00:04 2009] [notice] Parent: Received shutdown signal — Shutting down the server.
    [Wed Mar 18 19:00:04 2009] [notice] Child 5292: Exit event signaled. Child process is ending.
    [Wed Mar 18 19:00:05 2009] [notice] Child 5292: Released the start mutex
    [Wed Mar 18 19:00:06 2009] [notice] Child 5292: Waiting for 250 worker threads to exit.
    [Wed Mar 18 19:00:06 2009] [notice] Child 5292: All worker threads have exited.
    [Wed Mar 18 19:00:07 2009] [notice] Child 5292: Child process is exiting
    [Wed Mar 18 19:00:08 2009] [notice] Parent: Child process exited successfully.

    access.log:
    —————

    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET / HTTP/1.1” 200 4269
    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET /index.php?img=gifLogo HTTP/1.1” 200 5172
    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET /index.php?img=pngWrench HTTP/1.1” 200 741
    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET /index.php?img=pngFolderGo HTTP/1.1” 200 694
    127.0.0.1 – – [18/Mar/2009:17:52:02 -0700] “GET /index.php?img=pngFolder HTTP/1.1” 200 850
    127.0.0.1 – – [18/Mar/2009:17:52:02 -0700] “GET /index.php?img=pngPlugin HTTP/1.1” 200 548
    127.0.0.1 – – [18/Mar/2009:17:52:04 -0700] “GET /index.php?img=favicon HTTP/1.1” 200 13262
    127.0.0.1 – – [18/Mar/2009:18:08:45 -0700] “GET /announce?info_hash=%80%da%ff%d5%fe%fa%9e~%c0%f15w%fa%87%26%2cT%c7V%da&peer_id=-UT1820-z8%a4%2c%ec%03%ce%a0%9b%15Y%1a&port=43962&uploaded=39518208&downloaded=355991552&left=535363584&corrupt=0&key=DF26FC39&numwant=200&compact=1&no_peer_id=1 HTTP/1.1” 404 206
    127.0.0.1 – – [18/Mar/2009:18:39:32 -0700] “GET /announce?info_hash=%80%da%ff%d5%fe%fa%9e~%c0%f15w%fa%87%26%2cT%c7V%da&peer_id=-UT1820-z8%a4%2c%ec%03%ce%a0%9b%15Y%1a&port=43962&uploaded=39518208&downloaded=356515840&left=534986752&corrupt=0&key=DF26FC39&numwant=200&compact=1&no_peer_id=1 HTTP/1.1” 404 206

    that’s it! Still the server will not start. Can’t figure out what the ssl problem was now either, since the server won’t start!

    Thanks for your help in this though!

    • March 23, 2009 at 6:56 pm
      Permalink

      from you log, your server stall because ssl can not start, so if you don’t have any website or database yet, try to uninstall and reinstall wamp and try ssl again

  • March 19, 2009 at 12:33 pm
    Permalink

    Also, since yesterday the server will not start! The tray icon turns yellow but I can’t get any page to load.

    • March 20, 2009 at 9:35 am
      Permalink

      WebX, since you’re testing some other app as well, it’s harder to figure out what went wrong, so can you temporary move out everything in www folder except index.php file, remove or rename all log files, shut down and restart wamp, then post your log files again?

  • March 19, 2009 at 12:30 pm
    Permalink

    >> BN // Mar 19, 2009 at 10:07 am
    >>
    >> WebX, do you have anything in ssl log created >> in step 24-27?

    This is all I have from apache_error:
    ———————————————

    [Wed Mar 18 00:10:19 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 02:54:39 2009] [warn] pid file C:/wamp/bin/apache/apache2.2.6/logs/httpd.pid overwritten — Unclean shutdown of previous Apache run?
    [Wed Mar 18 02:54:39 2009] [notice] Apache/2.2.6 (Win32) PHP/5.2.5 configured — resuming normal operations
    [Wed Mar 18 02:54:39 2009] [notice] Server built: Sep 5 2007 08:58:56
    [Wed Mar 18 02:54:39 2009] [notice] Parent: Created child process 5292
    [Wed Mar 18 02:54:39 2009] [notice] Child 5292: Child process is running
    [Wed Mar 18 02:54:39 2009] [notice] Child 5292: Acquired the start mutex.
    [Wed Mar 18 02:54:39 2009] [notice] Child 5292: Starting 250 worker threads.
    [Wed Mar 18 02:54:39 2009] [notice] Child 5292: Starting thread to listen on port 80.
    [Wed Mar 18 02:56:35 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 03:01:59 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/jpuppet/components/com_virtuemart/shop_image/ps_image/modules.gif, referer: http://localhost/jpuppet/administrator/index.php?pshop_mode=admin&page=store.export_list&option=com_virtuemart
    [Wed Mar 18 03:25:02 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/jpuppet/components/com_virtuemart/shop_image/ps_image/product_code.png, referer: http://localhost/jpuppet/administrator/index.php
    [Wed Mar 18 03:25:23 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/jpuppet/components/com_virtuemart/shop_image/ps_image/product_code.png, referer: http://localhost/jpuppet/administrator/index.php?pshop_mode=admin&page=product.product_product_type_list&product_id=7&return_args=&option=com_virtuemart

  • March 19, 2009 at 1:30 am
    Permalink

    apache_error log:
    ——————–
    [Wed Mar 18 17:38:13 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 18:08:45 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 18:39:32 2009] [error] [client 127.0.0.1] File does not exist: C:/wamp/www/announce
    [Wed Mar 18 19:00:04 2009] [notice] Parent: Received shutdown signal — Shutting down the server.
    [Wed Mar 18 19:00:04 2009] [notice] Child 5292: Exit event signaled. Child process is ending.
    [Wed Mar 18 19:00:05 2009] [notice] Child 5292: Released the start mutex
    [Wed Mar 18 19:00:06 2009] [notice] Child 5292: Waiting for 250 worker threads to exit.
    [Wed Mar 18 19:00:06 2009] [notice] Child 5292: All worker threads have exited.
    [Wed Mar 18 19:00:07 2009] [notice] Child 5292: Child process is exiting
    [Wed Mar 18 19:00:08 2009] [notice] Parent: Child process exited successfully.

    *************************************

    apache access log:
    ————————

    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET / HTTP/1.1” 200 4269
    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET /index.php?img=gifLogo HTTP/1.1” 200 5172
    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET /index.php?img=pngWrench HTTP/1.1” 200 741
    127.0.0.1 – – [18/Mar/2009:17:52:01 -0700] “GET /index.php?img=pngFolderGo HTTP/1.1” 200 694
    127.0.0.1 – – [18/Mar/2009:17:52:02 -0700] “GET /index.php?img=pngFolder HTTP/1.1” 200 850
    127.0.0.1 – – [18/Mar/2009:17:52:02 -0700] “GET /index.php?img=pngPlugin HTTP/1.1” 200 548
    127.0.0.1 – – [18/Mar/2009:17:52:04 -0700] “GET /index.php?img=favicon HTTP/1.1” 200 13262
    127.0.0.1 – – [18/Mar/2009:18:08:45 -0700] “GET /announce?info_hash=%80%da%ff%d5%fe%fa%9e~%c0%f15w%fa%87%26%2cT%c7V%da&peer_id=-UT1820-z8%a4%2c%ec%03%ce%a0%9b%15Y%1a&port=43962&uploaded=39518208&downloaded=355991552&left=535363584&corrupt=0&key=DF26FC39&numwant=200&compact=1&no_peer_id=1 HTTP/1.1” 404 206
    127.0.0.1 – – [18/Mar/2009:18:39:32 -0700] “GET /announce?info_hash=%80%da%ff%d5%fe%fa%9e~%c0%f15w%fa%87%26%2cT%c7V%da&peer_id=-UT1820-z8%a4%2c%ec%03%ce%a0%9b%15Y%1a&port=43962&uploaded=39518208&downloaded=356515840&left=534986752&corrupt=0&key=DF26FC39&numwant=200&compact=1&no_peer_id=1 HTTP/1.1” 404 206

    • March 19, 2009 at 10:07 am
      Permalink

      WebX, do you have anything in ssl log created in step 24-27?

  • March 19, 2009 at 1:24 am
    Permalink

    JL SAID:
    “WebX, post the last 10 lines of your error log and access log here”

    Which error log and access log? There are several. In which folder would I find the specific logs of which you are referring?

  • March 18, 2009 at 9:35 pm
    Permalink

    I followed the procedure to the letter and even double checked the code, but when I click on the wamp trayicon and attempt to start the php_openssl extension I get the message:

    “Could not execute menu item (internal error) [Exception] Could not perform service action: The service has not been started”
    Can you help me to figute out what the problem could be?

    • March 18, 2009 at 10:12 pm
      Permalink

      WebX, post the last 10 lines of your error log and access log here

    • March 18, 2009 at 10:11 pm
      Permalink

      Faardeen, when enter pass phrase, it will not show, so make sure you type it just 1 time and no repeat πŸ˜‰

  • March 10, 2009 at 12:52 pm
    Permalink

    I tried this with WAMP Server v2.0 and when I run the first command I get:

    D:\wamp\bin\apache\Apache2.2.11\bin>openssl genrsa -aes256 -out pass.key 2048
    WARNING: can’t open config file: d:/test/opeenssl098i/openssl.cnf
    Loading ‘screen’ into random state – done
    Generating RSA private key, 2048 bit long modulus
    ……………….+++
    ……………………………+++
    e is 65537 (0x10001)
    Enter pass phrase for pass.key:
    Verifying – Enter pass phrase for pass.key:
    Verify failure
    User interface error
    2312:error:0906906F:PEM routines:PEM_ASN1_write_bio:read key:.\crypto\pem\pem_li
    b.c:331:

    Not sure why it’s referencing D:/test/…

    Help!

    • March 12, 2009 at 4:58 pm
      Permalink

      MacroDaveW, since our server already run on ssl, we didn’t try the latest release yet; anyway, have you ever setup ssl before?

  • March 1, 2009 at 1:20 am
    Permalink

    Kaleem ,

    I am having the same problem as you. Everything went well until I tried to turn on the Open SSL connection. It system tray icon immediately turned yellow and I haven’t been able to get the server to start.

  • February 25, 2009 at 12:58 pm
    Permalink

    Thank you for the step-by-step on setting this up. The only problem that I am having is when I go to https://…… I am getting a certificate trust issue. I do not have this problem on the computer running wamp, but I get this problem when accessing from other computers on my home network….any suggestions. I can not install the certificate either on the other computers on my home network…no option to.

    • February 25, 2009 at 10:31 pm
      Permalink

      since you follow our guide, you created a self signed certificate which is not trusted and need to be allowed in all browsers the first time it runs as shown in our guide from step 49 to 52 πŸ˜‰

  • February 19, 2009 at 2:27 pm
    Permalink

    Thanks for the detailed approach that certainly had helped. However, when I tried enabling php openSSL extension, wamp server doesn’t start. Wondering if I’ve miss something, I then tried to uncheck the openSSL extension and I get an error indicating an internal error that the service hasn’t started.

    Any suggestions please?

    Thanks,
    Kaleem

    • February 19, 2009 at 4:12 pm
      Permalink

      In what step you had that problem? Please, be more specific πŸ˜‰

  • February 17, 2009 at 12:29 am
    Permalink

    i tried getting my ssl to work and now my server will not start i followed the directions i even went over it again. i still cant figure out what i did wrong. any answer on this

  • February 16, 2009 at 11:34 am
    Permalink

    At Step 3 I got that message:

    C:\wamp\bin\apache\apache2.2.8\bin>openssl genrsa -aes256 -out pass.key 2048
    Loading ‘screen’ into random state – done
    Generating RSA private key, 2048 bit long modulus
    ………………………….+++
    …+++
    unable to write ‘random state’
    e is 65537 (0x10001)

    How can I resolve that problem ?
    Thx

    • February 17, 2009 at 8:43 am
      Permalink

      @ David
      it seems your ram exhausts when trying to generate 2048 bit long, so try with smaller number such as 1024 or even 512

      @ joe b
      in what step you got that error? if not sure, post the last 20 lines of your error log here

  • January 18, 2009 at 7:31 pm
    Permalink

    I would like to make a pdf of this tutorial and publish it for the Zen Cart community, giving you full credit of course.
    I will write the pdf first for my own usage, because it is difficult to follow instructions in web format and type at the same time.
    You can of course publish it here too.
    Thanks.

  • December 27, 2008 at 7:38 pm
    Permalink

    Merry Christmas and Very Happy New Year!

    Thanks for your (prompt!) answer.
    Kind regards!
    Vesso

  • December 7, 2008 at 3:34 pm
    Permalink

    [quote]
    I guess you have your reasons to use so many pages…
    [/quote]
    There are too many guide out there and people still have problem to get SSL running and that’s reason why we’d like to provide detail step-by-step guide so even people don’t know anything about coding still can follow πŸ˜‰
    [quote]
    However, would you suggest the way to change httpd.conf in a way to use http for the /wwwroot/ directory and https for wwwroot/subdir/?
    [/quote]
    Use .htaccess with rewrite rules to re-direct requests to associated web pages πŸ˜‰

  • December 7, 2008 at 9:11 am
    Permalink

    Thanks for your really wonderful guide!!!
    —————————————————-
    I followed it strictly and got the right result.
    I guess you have your reasons to use so many pages… πŸ™‚
    However, would you suggest the way to change httpd.conf in a way to use http for the /wwwroot/ directory and https for wwwroot/subdir/?

  • October 28, 2008 at 11:16 am
    Permalink

    finally, managed time to finish instruction guide for ssl/https and only need a little more time to put them together on web pages and will be posted soon πŸ˜‰

Leave a Reply