Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Configuring MAMP for SSL

Ok fellow coders, I am trying to configure MAMP with SSL on my mac for development purposes. I have read and tried the following instructions:
http://www.emersonlackey.com/article/mamp-with-ssl-https http://www.webopius.com/content/355/getting-mamp-working-with-ssl-on-os-x

with no luck. I can hit either 127.0.0.1 or localhost with http but both https://localhost and https://127.0.0.1 return host not found error.

looking at phpinfo, i can't see mod_ssl being loaded.

has anyone done this with os x 10.6.7? i have no idea where to go from here.

hope someone can help.

thanks

------edit start------

the following are the changes i have made to the config files to get https working. Please follow the tuts listed above to get the certificate/key created and the password removed (as also mentioned by @dallas below).

httpd.conf

Comment out the ifdef to make sure LoadModule is executed

#<IfDefine SSL>     LoadModule ssl_module modules/mod_ssl.so #</IfDefine> 

make sure the following is in the file...

Listen 80 ServerName localhost:80 

ssl.conf

Add the following ....

<VirtualHost localhost:443>     DocumentRoot /Users/myname/Documents/DevProjects/WebdevProjects     ServerName localhost     SSLEngine on     SSLCertificateFile /Applications/MAMP/conf/ssl/server.crt     SSLCertificateKeyFile /Applications/MAMP/conf/ssl/server.key </VirtualHost> 

before the existing

<VirtualHost _default_:443> 

server.crt and server.key are the newly created ones as per the obove tuts' links.

Comment out

#<IfDefine SSL>  

around line 35 and its closing tag around line 245 to enable the line...

Listen 443 

in between, update all certificate references to the newly created files as per the above VirtualHost definition.

like image 690
djeetee Avatar asked Jun 11 '11 20:06

djeetee


People also ask

How do I enable Openssl in MAMP?

for install composer and enable openssl extension, copy your php. conf in MAMP\conf\php{php-version} for MAMP\bin\php\php{php-version} and edit php. conf changing ;extension=php_openssl. dll for extension=php_openssl.

Does WebRTC require SSL?

“Encryption is required for all components of the WebRTC workflow. You must have a secure HTTP (HTTPS) connection to a web camera for WebRTC publishing and playback.”

How do I get local host on MAMP?

To access your localhost on another Mac on your LAN, you need to type in it's Local Hostname. To find out the Local Hostname of this Mac, go to System Preferences > Sharing > Edit . Now you can access your hosts from a different Mac on your LAN. Input :8888 as a suffix in your url bar to see the localhost.


2 Answers

If you're using MAMP 3 or 4 the instructions are slightly different. Here's what worked for me, starting from a fresh install of MAMP 3.0.5 on Mavericks without Pro.

Update: Still works on Yosemite after fixing Apache as described in this answer.

Further Update: Comments suggest this still works at least through MAMP 5.4.

Generate the certificate

This part is straight from the tutorials, so if you already did it you can skip to "Set up MAMP".

Use the terminal to generate a private key in your default folder:

cd ~ # generate a private key openssl genrsa -des3 -out server.key 2048 # make up a passphrase and remember it, you’ll need it 3 more times.  # generate certificate signing request openssl req -new -key server.key -out server.csr # same password # answer the questions, use "localhost" for your Common Name Country Name: US State Name: California Locality: My City Organization: My Company Organization Unit Name: # leave blank Common Name: localhost Email address: [email protected] A challenge password: # leave blank An optional company name: # leave blank  # generate the certificate from the CSR for 5 years openssl x509 -req -days 1825 -in server.csr -signkey server.key -out server.crt  # remove the password requirement from the server key cp server.key server.tmp openssl rsa -in server.tmp -out server.key 

Set up MAMP 3.0.5

Here's where the instructions from previous versions are a little off. The filenames and locations changed and some of the commands in the conf files are different. The following is what worked for me on a fresh install of MAMP 3.0.5.

Move the certificate files (server.key and server.crt) to:

/Applications/MAMP/conf/apache/

Open Apache's httpd.conf file:

/Applications/MAMP/conf/apache/httpd.conf

# set your listen port to 80 (near the top of the file) Listen 80  # set your ServerName to localhost:80 (default is 8888) ServerName localhost:80  # uncomment the line that includes the secure (SSL/TLS) connection conf Include /Applications/MAMP/conf/apache/extra/httpd-ssl.conf 

Save it and close. Now open Apache's ssl conf file:

/Applications/MAMP/conf/apache/extra/httpd-ssl.conf

Find the <VirtualHost> entry (big block at the end of the file starting with <VirtualHost _default_:443> and ending with </VirtualHost>) and replace the entire thing with:

<VirtualHost *:443>         SSLEngine on         SSLCertificateFile /Applications/MAMP/conf/apache/server.crt         SSLCertificateKeyFile /Applications/MAMP/conf/apache/server.key </VirtualHost> 

Save and close. Start your MAMP server. You should be able to access your document root at http://localhost and https://localhost.

like image 171
Robert Avatar answered Sep 19 '22 14:09

Robert


It's Very Difficult way for https here is simple way.

Open MAMP Pro.

  1. In Server Tab Make Sure Your HTTP Port is 80 and HTTPS Port is 443
  2. Click on Hosts Tab
  3. Click On Plus Arrow for add new host.
  4. Add 127.0.0.1 As Hostname
  5. Click SSL Enable
  6. Select Directory Where is your htdocs or websites folder
  7. Click on SSL Tab
  8. Create Self Signed Certificate By Button Below.
  9. Then it will ask for save location after save it will select certificate auto.
  10. Restart your MAMP Server.

Enjoy!!!!

Type : https with localhost then you can see result.

Next

like image 20
Mandeep Gill Avatar answered Sep 18 '22 14:09

Mandeep Gill