php - 我如何从另一台电脑访问第二个 laravel 应用程序

标签 php laravel

在此链接上: how can i access my laravel app from another pc?

它完美地描述了如何从同一网络上的另一台电脑访问laravel应用程序。 现在,我的问题是:

如何访问同一台电脑上的另一个应用程序?

我有一个虚拟机,为两个应用程序 app.dev 和 demo.dev 提供服务 两者都可以通过互联网浏览器在虚拟机内部访问

app.dev 可通过 http://localhost 访问和 http://app.dev demo.dev 只能在 http://demo.dev 上访问

外部虚拟机只能通过 IP 地址 192.168.0.60 访问 app.dev

我在虚拟机中使用了这个命令

sudo php artisan serve --host 192.168.0.60 --port 80

我应该再次使用

sudo php artisan serve ????

但是怎么办呢?有人帮忙吗?

最佳答案

Laravel 的 artisanserve 命令使用 PHP Built-in web server 。因为这不是一个功能齐全的 Web 服务器,它没有虚拟主机的概念,因此它只能运行映射到 IP 和端口对的服务器的一个实例。

通常,要从同一 IP 地址为两个主机提供服务,您需要在虚拟机的 /etc/hosts 文件中添加以下映射:

192.168.0.60 app.dev
192.168.0.60 demo.dev

现在您可以通过运行以下命令来运行app.dev:

php artisan serve --host app.dev --port 80

并且可以使用 http://app.dev 在您的主机上使用它。但是,如果您尝试使用以下命令为 demo.dev 启动第二个服务器实例:

php artisan serve --host demo.dev --port 80

不起作用并且会提示:

Address already in use

您可以通过为您的 demo.dev 应用程序使用不同的端口来解决这个问题,例如:

php artisan serve --host demo.dev --port 8080

现在您可以访问 http://demo.dev:8080用于主机上的第二个应用程序。

<小时/>

话虽这么说,我建议您安装一个功能齐全的 Web 服务器,例如 Apache 或 nginx,然后为每个应用程序设置一个虚拟主机(只需确保保留 /etc/hosts 我在上面展示的文件)。

对于这两种服务器解决方案来说,设置虚拟主机都非常容易。以下是 Laravel Recipes 网站上两篇文章的链接,展示了如何专门针对 Laravel 执行此操作:

Creating an Apache VirtualHost

Creating a Nginx VirtualHost

关于php - 我如何从另一台电脑访问第二个 laravel 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36664575/

相关文章:

php - Laravel4 复制/复制表行

Laravel - 限制用户的帖子数量

php - 我如何确保只有我的phonegapp ajax帖子将由php执行

php - HTML+CSS 到 RTF(在 PHP 中)?

PHP增量特性

laravel - 给分页添加参数

php - 使用 Laravel 查询生成器转换 MySQL 查询

php - Laravel 中不存在类日志

php - 如何在Codeigniter中创建两个父 Controller ?

php - mysql WHERE 语句中的字符串数组值