从外部设备本地访问 Laravel 5 应用程序

Access to Laravel 5 app locally from an external device

我在网上找过解决办法,但还没有找到解决办法。 我需要从我的 iPhone 访问我的 Laravel 5 应用程序,但我正在开发中,所以我不想在网络服务器上发布我的应用程序。

如果你有一个link可以遵循,你保证它有效,它对我来说是完美的。

谢谢!

有很多方法可以做到这一点。

  1. 从您的 iPhone 通过 IP 地址访问您的网站,例如http://192.168.1.100/laravel
  2. 如果您的 iPhone 已越狱,您可以编辑 iPhone 的 /etc/hosts 文件,通过域访问您的网站,例如laravel.com 192.168.1.100
  3. 将 laravel 应用程序上传到 Web 服务器并将其配置为测试域,例如dev.domain.com,或dev.domain.com:8080
  4. 如果你可以配置你的WiFi路由器,你可以给你的电脑一个"port forwarding"或者设置“DMZ
  5. 上传您的网站,并配置 "IP forbidden" 角色,例如对于 Apache,编辑 laravel 的 .htaccess 文件:

    Deny from all
    Allow from 180.159.251.175
    

您可以使用 Laravel Homestead,一个官方预打包的 Vagrant "box" 来开发您的项目,并从同一私有网络中的多台机器访问您的本地网站。

您可以在此处找到有关宅基地及其使用方法的更多信息: http://laravel.com/docs/5.0/homestead

这里是 Vagrant 专用网络设置示例: http://docs.vagrantup.com/v2/networking/private_network.html

如果出于某些特殊原因您不必须使用 Apache 或 nginx,并且这仅用于开发目的,您可以使用 PHP 为应用程序提供服务内置服务器和 artisan。这是迄今为止最容易设置的东西,只需要您在 Laravel 应用程序目录中 运行 一个命令:

php artisan serve --host 0.0.0.0

它将侦听的默认端口将是 8000 以避免任何冲突,因此您现在可以通过计算机的 IP 地址从 phone 访问该应用程序:

http://192.168.1.101:8000

如果你想监听另一个端口(例如 80 的默认 HTTP 端口),你可以将其作为参数传递,只要确保没有其他服务器在 运行 上港口。所以如果你 运行 改为:

php artisan serve --host 0.0.0.0 --port 80

您现在可以仅使用 IP 地址访问您的应用程序:

http://192.168.1.101

如果您在使用已接受的答案方法时遇到问题,并且出现找不到页面或类似错误,这可能是由于您的防火墙设置所致。

如果

php artisan serve --host 0.0.0.0

好像不行。 尝试 php artisan serve --host 0.0.0.0 --port 80。 只需使用您的 IP 地址即可访问。例如:

http://192.168.1.101

很简单,首先你必须运行服务器

php artisan serve --host 0.0.0.0

然后你需要知道你的IP地址是什么,运行这个获取IP的命令:

在windows中:

ipconfig

在Linux中:

hostname -I

比如我的IP是:192.168.1.68

获得 IP 后,您必须在手机上访问该地址。喜欢:

192.168.1.68:8000

就是这样。