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

时间:2015-06-05 20:12:07

标签: php laravel laravel-5 virtualhost

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

如果你有一个关注的链接,你保证它有效,这对我来说是完美的。

谢谢!

6 个答案:

答案 0 :(得分:75)

如果由于某些特殊原因您没有使用Apache或nginx,这仅用于开发目的,您可以使用PHP内置服务器和{{ 1}}。到目前为止,这是最简单的设置,只需要在Laravel应用程序目录中运行一个命令:

artisan

它将监听的默认端口为php artisan serve --host 0.0.0.0 以避免任何冲突,因此您现在可以通过计算机的IP地址从手机访问该应用程序:

8000

如果您想要侦听另一个端口(例如,http://192.168.1.101:8000 的默认HTTP端口),您可以将其作为参数传递,只需确保该端口上没有其他服务器正在运行。所以如果你改为运行它:

80

您现在只需使用IP地址访问您的应用程序:

php artisan serve --host 0.0.0.0 --port 80

答案 1 :(得分:3)

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

  1. 通过iPhone上的IP地址访问您的网址,例如: http://192.168.1.100/laravel
  2. 如果您的iPhone已越狱,您可以编辑iPhone的/etc/hosts文件,通过域访问您的网站,例如: laravel.com 192.168.1.100
  3. 将laravel app上传到网络服务器并将其配置为测试域,例如dev.domain.comdev.domain.com:8080
  4. 如果您可以配置WiFi路由器,可以为计算机提供“端口转发”或设置“DMZ
  5. 上传您的网站,并配置“IP禁止”角色,例如对于Apache,编辑laravel的.htaccess文件:

    Deny from all
    Allow from 180.159.251.175
    

答案 2 :(得分:0)

你可以使用Laravel Homestead,这是一个官方的预包装Vagrant"盒子"开发您的项目并从同一专用网络内的多台计算机访问您的本地网站。

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

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

答案 3 :(得分:0)

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

答案 4 :(得分:0)

如果

php artisan serve --host 0.0.0.0

似乎不起作用。 试试php artisan serve --host 0.0.0.0 --port 80。 并且只使用您的IP地址访问。例如:

http://192.168.1.101

答案 5 :(得分:0)

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

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

就是这样。