在灯

时间:2018-05-29 04:17:10

标签: php laravel apache virtualhost

我有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

3 个答案:

答案 0 :(得分:1)

source

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

最近谷歌宣布,即将发布的Chrome更新,他们将强制.dev到HTTPS。简而言之,这意味着如果您使用.dev运行本地网站并运行谷歌浏览器,您将发现您的网站无法访问。幸运的是,有几个选项可以很容易地实现来解决这个问题。请记住,由于.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项目的名称。根据你的名字改变它。

答案 1 :(得分:0)

`<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

在主机文件中添加此行 并重新启动本地服务器

答案 2 :(得分:0)

<强>解决

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

关于apache似乎我无法使子域工作,并且从我在本地环境中学到的知识如何工作是域必须首先在这里。

ServerAlias blog.example.devServerName example.dev域中无效。

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

主机文件也是相同的

127.0.0.1 example.local

127.0.0.1 blog.example.local

如果我错了,请纠正我。