为 SSL 配置 MAMP

2024-03-24

好吧,各位编码员,我正在尝试在我的 mac 上使用 SSL 配置 MAMP 以用于开发目的。我已阅读并尝试了以下说明:
http://www.emersonlackey.com/article/mamp-with-ssl-https http://www.emersonlackey.com/article/mamp-with-ssl-https http://www.webopius.com/content/355/getting-mamp-working-with-ssl-on-os-x http://www.webopius.com/content/355/getting-mamp-working-with-ssl-on-os-x

没有运气。我可以打127.0.0.1或 localhost 与 http 但两者https://localhost and https://127.0.0.1返回主机未找到错误。

查看 phpinfo,我看不到 mod_ssl 正在加载。

有人用 os x 10.6.7 做过这个吗?我不知道从这里该去哪里。

希望有人可以帮忙。

thanks

------编辑开始------

以下是我为使 https 正常工作而对配置文件所做的更改。请按照上面列出的步骤创建证书/密钥并删除密码(也如下面@达拉斯 https://stackoverflow.com/a/6380858/102616).

httpd.conf

注释掉 ifdef 以确保 LoadModule 被执行

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

确保文件中包含以下内容...

Listen 80
ServerName localhost:80

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>

在现有的之前

<VirtualHost _default_:443>

server.crt 和 server.key 是根据上面的链接新创建的。

注释掉

#<IfDefine SSL> 

第 35 行周围及其结束标记在第 245 行周围,以启用该行...

Listen 443

其间,根据上述 VirtualHost 定义更新对新创建的文件的所有证书引用。


如果您正在使用曼普 3 或 4说明略有不同。 以下是对我有用的方法,从在没有 Pro 的 Mavericks 上全新安装 MAMP 3.0.5 开始。

更新:按照中所述修复 Apache 后,仍然可以在 Yosemite 上使用这个答案 https://stackoverflow.com/a/25212463/149097.

进一步更新:评论表明这至少仍然有效MAMP 5.4.

生成证书

这部分直接来自教程,因此如果您已经这样做了,您可以跳到“设置 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 protected] /cdn-cgi/l/email-protection
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

设置 MAMP 3.0.5

这是与以前版本的说明略有不同的地方。文件名和位置已更改,conf 文件中的某些命令也不同。以下是在全新安装 MAMP 3.0.5 时对我有用的内容。

将证书文件(server.key 和 server.crt)移动到:

/应用程序/MAMP/conf/apache/

打开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

保存并关闭。现在打开 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>

保存并关闭。启动您的 MAMP 服务器。您应该能够访问您的文档根目录http://localhost and https://localhost.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为 SSL 配置 MAMP 的相关文章

随机推荐

  • 替换 JS 中的变音符号

    我正在比较字符串 并且必须替换 JS 中的变音符号 但 JS 似乎无法识别字符串中的变音符号 文本来自数据库 在浏览器中变音确实显示得很好 function replaceUmlauts string value string toLowe
  • 如何在C#中实现内存事务范围?

    我们有一个缓存 我想在其中放置一些事务范围 以便任何进程都必须显式 提交 它想要对缓存对象执行的更改 并且可以在进程中途失败时回滚任何更改 现在 我们正在根据 get 请求深度克隆缓存的对象 它可以工作 但它不是一个干净的解决方案 并且还涉
  • ASP.NET - bin 目录与在 web.conf 中添加程序集

    我对 ASP NET 编程相对较新 但不是一般的编程 并且我一直在研究移交给我的一个项目 在这个项目中 有一个 bin 目录 其中包含大量各种 DLL 文件 然后 在 web conf 文件中的程序集结构内 在 XML 内 添加了大量其他程
  • ASP.NET MVC 4 中的 Web Api 中的路由

    我正在将 Web api 与 ASP NET MVC 4 结合使用 我有以下命名的控制器 客户控制器 控制器 客户 ApiController ApiController 早些时候我的CustomerApiController被命名为Cus
  • 在java中使用enum作为类

    我有一个班级enum在它和类中 其中包含list该对象的 public enum State ACTIVE NOT ACTIVE public class SomeObject State state public SomeObject S
  • 处理 java.lang.IllegalArgumentException:没有枚举常量的最佳方法是什么

    枚举类是这样的 public enum UserRoles ADMIN TEST 我想处理它 这样如果枚举中没有值 它就不应该抛出异常 我这样处理 for String roleString roleStrings if roleStrin
  • 如何使用 MajorUpgrade 和 RemoveFeatures 仅删除特定功能并仍然卸载产品的先前版本

    我从与 VS 2010 一起打包的 Microsoft 安装程序切换到 Wix 3 6 我试图通过使用
  • 如何进行WCF REST缓存?

    我有一个 WCF REST 服务 需要返回静态数据和一些基于客户端 胖 Windows 客户端 传入的参数的过滤数据 由于提供此服务的数据存储不会经常更改 因此我想在服务上缓存此数据 服务器端缓存 数据存储是 Azure 表 我知道 WCF
  • 使用 DirectX 播放音频时出现加载程序锁定异常

    我正在尝试使用 DirectX dll 播放音频文件 Audio FromFile Message 1 mp3 Play 但检测到加载器锁异常 如下所示 我不是分析堆栈跟踪的专家 如何分析和解决装载机锁问题 检测到 LoaderLock M
  • 当 iframe 存在时,Android webview 将无法正确处理事件

    我遇到以下问题 我有一个 web 视图 在其中加载一个 iframe 我通过 javascript 修改 插入文本 内容文档 问题是 当内容变得太多 网络视图变得可滚动 并且当用户滚动时 触摸事件将无法正确处理 即用户将点击某处 光标将出现
  • 如何解决hadoop中的“文件只能复制到0个节点,而不是1个”?

    我有一个简单的 hadoop 作业 可以抓取网站并将其缓存到 HDFS 映射器检查 HDFS 中是否已存在 URL 如果存在 则使用它 否则下载页面并将其保存到 HDFS 如果下载页面时遇到网络错误 404 等 则完全跳过 URL 不会写入
  • 备份 git 存储库中的所有分支,保留已重新定位和强制的内容

    我正在寻找一种解决方案来备份多个共享 git 存储库 每个存储库都有多个分支 并且某些分支会被重新设置基址并被强制 我知道这违反了最佳实践 但这是我现在必须处理的事情 我在想一个简单的git clone mirror然后定期git remo
  • 连接整数变量最惯用的方法是什么?

    编译器似乎没有推断出整数变量作为字符串文字传递到concat 宏 所以我找到了stringify 将这些整数变量转换为字符串文字的宏 但这看起来很难看 fn date year u8 month u8 day u8 gt String co
  • 加载我的包时 Symfony 容器没有扩展

    我有一个捆绑包 在一段时间内运行良好 但是 我必须向其中添加一些自定义配置参数 因此我在包的 config yml 中编写了一些行 如下所示 acme my bundle special params param 1 param 2 配置在
  • 带有模块的 Ruby 类命名空间:为什么我会收到带有双冒号的 NameError 而不是模块块?

    我正在处理许多预先存在的文件 类和模块 并尝试为框架的不同组件提供更好的命名空间 我一直使用模块作为命名空间的方式 主要是因为这似乎是标准约定 并且能够 包含 框架的不同部分可能很有用 问题在于 全局命名空间下有大量本应存在于模块下的类 例
  • 什么是编程中的“序列化”对象? [复制]

    这个问题在这里已经有答案了 我到处都看到过 序列化 这个词 但从未解释过 请解释一下这是什么意思 序列化通常是指将抽象数据类型转换为字节流的过程 有时也序列化为文本 XML 或 CSV 或其他格式 重要的是它是一种简单的格式 无需理解即可读
  • 使用 ui 路由器实例化作用域和控制器

    我对控制器何时实例化感到困惑 另外 在嵌套状态时控制器如何实例化 我可能会感到困惑范围如何附加到视图和控制器 也就是说 如果每个视图都有自己的控制器和范围 或者它们共享相同的范围 有人可以解释一下控制器何时被实例化吗 在嵌套路由下 所有视图
  • 获取 Gallery Intent 选择的图像路径时出错(Android 6 - 某些设备)

    当用户从图库中选择时 有意 我试图获取图像的路径 它一直工作正常 因为一些用户注意到 Android 6 0 无法做到这一点 我尝试过不同的方法 有些解决方案可以在 Android 6 0 的模拟器中运行 但不能在我的 Android 6
  • 如何退出 Android 应用程序?

    我刚刚读到 您只需调用以下命令即可退出 Android 应用程序 finish 然而 这种情况并非如此 当我这样做时 我收到以下错误 PackageInstallationReciever Remove data local tmp com
  • 为 SSL 配置 MAMP

    好吧 各位编码员 我正在尝试在我的 mac 上使用 SSL 配置 MAMP 以用于开发目的 我已阅读并尝试了以下说明 http www emersonlackey com article mamp with ssl https http w