【发布时间】:2013-01-09 23:56:58
【问题描述】:
如何使用 MAMP PRO 在 localhost ITSELF(而不是任何虚拟主机)上设置 SSL?
我需要这样做,以便可以在我的 iPhone 上预览我正在创建的网站,它使用相同的 Wi-Fi IP 地址。
(为此,我只需在 iPhone 浏览器的地址栏中输入 WiFi 的 IP 地址)。
提前非常感谢!!
【问题讨论】:
如何使用 MAMP PRO 在 localhost ITSELF(而不是任何虚拟主机)上设置 SSL?
我需要这样做,以便可以在我的 iPhone 上预览我正在创建的网站,它使用相同的 Wi-Fi IP 地址。
(为此,我只需在 iPhone 浏览器的地址栏中输入 WiFi 的 IP 地址)。
提前非常感谢!!
【问题讨论】:
您可以查看这些文章:Getting MAMP working with SSL on Mac OS X。
【讨论】:
听起来您对 localhost 是什么感到困惑。本地主机始终是本地的:这是机器本身,并具有127.x.x.x 作为 IP 地址(通常为127.0.0.1)。
如果您在 Mac 上运行 MAMP,则从您的 iPhone 或任何其他设备连接到 localhost 将毫无用处。就您的 iPhone 而言,localhost 就是 iPhone 本身。
如果你想在你的局域网中运行一个测试服务器,它可能使用private addresses(通常是192.168.0.x),你需要将你的服务器配置为运行它的机器所使用的 IP 地址(您通常可以在网络偏好设置中看到这一点)。
就 Apache Httpd 而言,这必须在 VirtualHost 中进行配置(匹配那个 LAN IP 地址)。不太清楚你在追求什么:这就是 Apache Httpd 的配置方式。
您将遇到的问题是您的证书需要对该 IP 地址有效。事实上,分配主机名通常更简单(例如,一些路由器为它们还运行 DHCP 服务的机器提供小型 DNS 服务),而且通常更有意义。不过,您可以使用 IP 地址主题备用名称 (SAN) 条目生成对 IP 地址有效的证书(如this answer 中所述,请参阅 OpenSSL 部分)。这也意味着您需要使用自己的自签名证书或自己的迷你证书颁发机构,并且您必须以某种方式将其导入您的 iPhone 以使服务器证书受到信任。
【讨论】:
<VirtualHost 192.168.0.x:443> 部分中使用 SSL 指令(并使用 Listen 443)。