【问题标题】:Creating virtual host for laravel in Lamp在 Lamp 中为 laravel 创建虚拟主机
【发布时间】:2018-11-07 15:06:26
【问题描述】:

我有 laravel 设置,我正在尝试创建子域路由。基本上我的路由需要接受这个参数 blog.example.dev

我现在已经设置了路由,我只需要创建虚拟主机。因为我在 laravel 应用程序中的域接受 blog.example.dev 。为了创建虚拟主机,我需要执行哪些步骤?我还应该在 htaccess 之类的应用程序中进行任何其他更改。 我正在使用最新版本的 laravel

对于我使用 Ubuntu 17 的操作系统。

编辑: 在 linux 中制作虚拟主机很容易,但它并不像我想象的那样工作。 laravel 服务应该启动页面,但它不会,即使我创建虚拟主机,页面也无法访问。任何提示都会很棒我尝试通过 DigitalOcean 博客创建虚拟主机。 https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts

【问题讨论】:

  • 请告诉我你的操作系统

标签: php laravel apache virtualhost


【解决方案1】:

source

不久前,Google 购买了 .dev TLD(顶级域)。当时,他们宣布他们没有计划,他们只会将其用于内部目的。多年来,.dev TLD 主要供开发人员和设计人员在其本地开发环境中使用。它被认为是普遍可接受的用途,因此,各地的开发人员现在都在本地运行可能会受到影响的网站。

最近 Google 宣布,在即将发布的 Chrome 更新中,他们将强制 .dev 使用 HTTPS。简而言之,这意味着如果您使用 .dev 运行本地站点并运行 Google Chrome,您会发现您的站点无法访问。幸运的是,有几个选项很容易实现来解决这个问题。请记住,由于 .dev 一段时间以来一直是本地开发的标准 TLD,因此无论您使用的是 DesktopServer 还是任何其他使用 .dev TLD 的本地开发工具,Google 的这项新政策都会对您产生影响。此问题并非特定于 DesktopServer。

因此,您需要使用.dev 以外的任何其他扩展名,例如.com.test。在您的 apache 虚拟主机文件中添加新条目,如下所示:-

<VirtualHost *:80>

ServerAdmin webmaster@dev.blog.com
ServerName dev.blog.com
ServerAlias dev.blog.com
DocumentRoot /var/www/blog/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

并将这个新条目添加到您的本地计算机主机文件中:-

127.0.0.1 dev.blog.com

重新启动 apache 服务器以加载新的更改。

注意:- blog 是您的 laravel 项目的名称。根据您的命名更改它。

【讨论】:

  • 这没有用。我一次又一次地尝试这样做,但不知何故,Firefox 总是显示无法访问的页面,并且服务没有做任何特别的事情来显示页面。
  • 谢谢。完成后我会尽快回复您。
  • 没问题。你一试就告诉我。如果它不起作用,我可能需要您项目的 .env 文件。
【解决方案2】:
`<VirtualHost *:80>
ServerAdmin webmaster@dummy.com
ServerName projectname.local
ServerAlias projectname.local
DocumentRoot "c:xampp/htdocs/projectname/public"
 ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
 </VirtualHost>`

使用.local制作虚拟主机

127.0.0.1 projectname.local

在你的主机文件中添加这一行 并重启你的本地服务器

【讨论】:

    【解决方案3】:

    已解决

    基本上我刚刚创建了虚拟主机,但是在将子域放置在文件顶部之后,我注意到 laravel 中出现了一些奇怪的行为。我不知道 laravel 会首先处理 suddomain 路由,如果您在某些路由之后放置子域路由,那么它不起作用,那么您将无法获得所需的路由。

    关于 apache,我似乎无法使子域工作,从我在本地环境中了解到的情况来看,它的工作原理是域必须首先出现。

    ServerAlias blog.example.devServerName example.dev 域中不起作用。

    我为example.devblog.example.dev 创建了两个单独的虚拟主机。还要感谢parthu_panther,我将.dev 更改为另一个.local

    hosts文件也一样

    127.0.0.1 example.local

    127.0.0.1 blog.example.local

    如果我错了,请纠正我。

    【讨论】:

      猜你喜欢
      • 2014-08-23
      • 2012-01-06
      • 2015-08-22
      • 2016-05-11
      • 2013-02-17
      • 2012-01-29
      • 2022-09-27
      • 2013-01-11
      • 1970-01-01
      相关资源
      最近更新 更多