我正在本地主机上构建一个网站:
我需要在我的 iPhone 上测试它,但我不知道如何进行。我是否只更改我的 httpd-vhosts.conf 文件?如果是,设置是什么?
假设您的开发机器名为
my-macbook-pro
,您应该能够在 iPhone 上导航到 http://my-macbook-pro.local/mywebsite
。
稍微扩展一下 Richard J. Ross III 的答案,“localhost”是一个仅用于指代本地计算机的名称。为了让您的 iPhone 能够访问该机器上的内容,它必须:
拥有与服务器计算机位于同一网络的 IP 地址。
这可以通过将 iPhone 连接到与 PC 位于同一网络的无线接入点,或在两个设备之间创建临时无线网络来实现。
响应来自网络客户端的 HTTP 请求。
假设服务器和iPhone位于同一网络上,那么流量应该可以在它们之间流动。但是,为了使您的 Web 内容对 iPhone 可见,还必须将 Web 服务器配置为响应对服务器计算机的 IP 地址发出的请求。
这通常不是问题,因为 Web 服务器通常配置为响应发送到任何计算机 IP 地址的 HTTP 请求。服务器可以配置为仅响应本地请求,但这不是典型的默认设置
如何检查或修改此设置取决于您所使用的 HTTP 服务器软件。由于未指定此信息,我将包含 Apache2 的说明,因为这是 HTTP 服务器的常见选择。
Apache 的主要配置文件是
httpd.conf
,它位于 Apache 目录的 conf
子目录中。 Apache 根目录的位置将根据您使用的操作系统以及安装时是否选择自定义位置而有所不同。
httpd.conf 文件包含一个名为 Listen 的指令,该指令控制 Apache 侦听传入 HTTP 请求的接口(IP 地址和端口)。
该指令的默认形式是common
Listen 80
这指定计算机将在其任何 IP 地址上响应端口 80 上发出的请求,这是 HTTP 流量的默认端口。
您可以修改 Listen 指令以使用与机器关联的任何地址,包括名称
127.0.0.1
解析为的环回地址 (localhost
)。
如果 Apache 设置为仅侦听环回地址,那么您的服务器计算机将仅响应本地计算机上发出的请求。在此配置中,您的 Listen 指令将类似于:
Listen 127.0.0.1:80
如果是这种情况,您将需要更改为侦听所有地址(如上例所示),或仅侦听 iPhone 用于与服务器计算机通信的地址。
如果您使用虚拟主机(同一服务器 apache 上的多个站点),接下来的几个提示可以帮助您在移动设备上查看本地网站:
1) VHOST 编辑 - 您应该转到服务器上的 /etc/apache2/sites-available/ 。可以有多个文件
.conf
,每个文件都包含apache的虚拟主机配置。默认文件将类似于 000-default.conf。使用管理员权限打开它(或另一个)sudo
。在该文件中,您应该看到类似这样的内容:
<VirtualHost *:80>
ServerName auction.dev
ServerAdmin [email protected]
DocumentRoot /var/www/public_html/html
ErrorLog /var/www/logs/error.log
CustomLog /var/www/logs/access.log combined
</VirtualHost>
2) XIP.IO - 这项特殊服务(完全免费)可以为您提供帮助。您应该将下一行添加到
.conf
文件 - ServerAlias auction.dev.*.xip.io
,此操作后您的文件将如下所示:
<VirtualHost *:80>
ServerName auction.dev
ServerAlias auction.dev.*.xip.io
ServerAdmin [email protected]
DocumentRoot /var/www/public_html/html
ErrorLog /var/www/logs/error.log
CustomLog /var/www/logs/access.log combined
</VirtualHost>
编辑后,您应该保存此文件并使用命令
sudo apachectl restart
重新启动apache。
3)从手机查看 - 你需要知道你的服务器的IP,在我的情况下IP = 192.168.1.247。现在,在您的移动浏览器中,只需输入auction.dev.192.168.1.247.xip.io,您应该会看到您的本地网站。
我正在与 xampp 合作。 localhost 在端口 8080 上工作。 我只是用 ipconfig 找到我的 IP,然后冲浪到
http://10.0.0.1:8080
。
就这么简单!
如果您只是想更好地体验本机行为而不仅仅是浏览器开发工具,您可以使用 iOS 模拟器并在 safari 应用程序中输入 localhost:xxxx。
我正在行使其 GDPR 权利来删除我的贡献
当您使用电缆将 iPod 连接到 MacBook 时,设备会出现在 Mac 上的 Safari 开发人员菜单中。当您单击此选项时,您可以看到与在 iPod 上看到的完全相同的内容。
遵循这些步骤对我有用:
https://mtm.dev/iphone-localhost-mac
它基于
Internet Sharing via USB
并设置和使用 device_name
,然后按照 <device_name>.local:<port>
的方式使用