dje*_*tee 36 apache ssl https mamp
好的编码员,我正在尝试在我的mac上使用SSL配置MAMP用于开发目的.我已阅读并尝试了以下说明:
http
://www.emersonlackey.com/article/mamp-with-ssl-https http://www.webopius.com/content/355/getting-mamp-working-with- SSL-ON-OS-X
没有运气.我可以打任何127.0.0.1或本地主机以http但两者https://localhost并https://127.0.0.1返回找不到主机错误.
看着phpinfo,我看不到mod_ssl被加载了.
有没有人用os x 10.6.7做到这一点?我不知道从哪里开始.
希望有人能提供帮助.
谢谢
------编辑开始------
以下是我对配置文件所做的更改,以使https正常工作.请按照上面列出的方法获取创建的证书/密钥并删除密码(如下面的@dallas所述).
httpd.conf文件
注释掉ifdef以确保执行LoadModule
#<IfDefine SSL>
LoadModule ssl_module modules/mod_ssl.so
#</IfDefine>
Run Code Online (Sandbox Code Playgroud)
确保文件中包含以下信息......
Listen 80
ServerName localhost:80
Run Code Online (Sandbox Code Playgroud)
ssl.conf中
添加以下内容....
<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>
Run Code Online (Sandbox Code Playgroud)
在现有之前
<VirtualHost _default_:443>
Run Code Online (Sandbox Code Playgroud)
server.crt和server.key是根据obove tuts的链接新创建的.
评论出来
#<IfDefine SSL>
Run Code Online (Sandbox Code Playgroud)
在第35行附近及其在245行附近的关闭标记以启用该行...
Listen 443
Run Code Online (Sandbox Code Playgroud)
在两者之间,根据上面的VirtualHost定义更新对新创建的文件的所有证书引用.
Rob*_*ert 41
如果您使用的是MAMP 3或4,则说明略有不同.这对我有用,从没有Pro的Mavericks上全新安装的MAMP 3.0.5开始.
更新:如本答案所述,在修复Apache之后仍可在Yosemite上运行.
进一步更新:评论表明这至少仍然适用于MAMP 4.2.1.
生成证书
这部分直接来自教程,所以如果你已经这样做了,你可以跳到"设置MAMP".
使用终端在默认文件夹中生成私钥:
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@example.com
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
Run Code Online (Sandbox Code Playgroud)
设置MAMP 3.0.5
这是以前版本的说明稍微偏离的地方.文件名和位置已更改,conf文件中的某些命令不同.以下是全新安装的MAMP 3.0.5对我有用的内容.
将证书文件(server.key和server.crt)移动到:
/应用程序/ MAMP/conf目录/阿帕奇/
打开Apache的httpd.conf文件:
/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
Run Code Online (Sandbox Code Playgroud)
保存并关闭.现在打开Apache的ssl conf文件:
/Applications/MAMP/conf/apache/extra/httpd-ssl.conf
找到<VirtualHost>条目(文件末尾的大块<VirtualHost _default_:443>以及以...结尾</VirtualHost>)并用以下内容替换整个内容:
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /Applications/MAMP/conf/apache/server.crt
SSLCertificateKeyFile /Applications/MAMP/conf/apache/server.key
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
保存并关闭.启动您的MAMP服务器.您应该能够在http://localhost和访问您的文档根目录https://localhost.
Man*_*ill 25
对于https来说这是非常困难的方式,这是一种简单的方法.
打开MAMP Pro.
请享用!!!!
键入:https with localhost然后您可以看到结果.
下一个
小智 4
我刚刚遇到了同样的问题,但能够解决它。
我在跑; Mac 操作系统 10.6.7 MAMP 1.9.4
我只读过 webopius 的 tut,它做得很好,但它错过了一些东西。
我改变了httpd.conf
Listen 80不是Listen 127.0.0.1:80
我也忘记在终端中运行它
cp server.key server.tmp
openssl rsa -in server.tmp -out server.key
这会删除使用密钥所需的密码,如果您不在终端中启动 apache,则无法输入证书的密码短语。
您可以做的是,运行此命令启动 MAMP 的 apache 并查看是否弹出任何错误。
sudo /Applications/MAMP/Library/bin/apachectl start
好吧,想想就差不多了。
| 归档时间: |
|
| 查看次数: |
37163 次 |
| 最近记录: |