【问题标题】:Laravel not showing index.phpLaravel 不显示 index.php
【发布时间】:2014-02-18 14:37:58
【问题描述】:

我是 Laravel 的新手,我创建了虚拟主机 http://example.com 并将 Laravel 安装在该域的文件夹中,但是当我尝试访问该域时,我得到了这个

【问题讨论】:

  • 显示您的 VirtualHost 配置,并确保在您的 httpd.conf 中启用了 vhosts 模块
  • DocumentRoot "C:/xampp/htdocs/example" ServerName example.com ServerAlias www.example.com ErrorLog "logs/www.example.com.domain-error.log "

标签: php frameworks laravel laravel-4


【解决方案1】:

这是您的VirtualHost 设置

<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs/example" ## <-- pointed to wrong folder
    ServerName example.com
    ServerAlias www.example.com 
    ErrorLog "logs/www.example.com.domain-error.log"
</VirtualHost>

您没有将其指向public 文件夹。应该是(这些是最低要求)

<VirtualHost *.80>
    DocumentRoot "C:/xampp/htdocs/example/public"
    ServerName example.com
</VirtualHost>

您应该将其指向public 文件夹,因为index.phppublic 文件夹内。

我使用这种设置

<VirtualHost laravel4.dev>
    DocumentRoot "D:/xampp/htdocs/laravel4/public"
    ServerName laravel4.dev
</VirtualHost>

windows/system32/drivers/etc/host 文件中的相应设置是

127.0.0.2           ci.dev
127.0.0.3           laravel4.dev ## <-- This is for current vHost
127.0.0.4           symcom.dev

所以,我可以使用http://laravel4.devdev 用于开发)导航到本地主机上的网站

【讨论】:

  • 非常感谢! :)
  • @php12345,欢迎 :-)
  • 希望我在谷歌搜索这个完全相同的问题时能找到这篇文章......我终于把它放在一起并且它工作了,但这会为我节省一些悲伤!
  • @AVProgrammer,祝您下次一切顺利,并感谢您的赞许:-)
  • 我也做了同样的事情。我认为将 vhost 指向 laravel 安装文件夹 /example/ 应该足够了,因为 Laravel 路由会自动将所有 / url 移动到公共文件夹。我猜我读错了。
【解决方案2】:

这正是您应该看到的。当您单击“公共”文件夹时,您是否会看到带有 laravel 徽标的“您已到达。”?如果是这样,那么你已经正确安装了 laravel。

“公共”文件夹是当您将网站放在服务器上时,实际公众可以访问您的网站的主要文件夹。您需要在这里做以下两件事之一:

简单(但不安全)的方式:

将 .htaccess 文件添加到包含此文本的 Web 文件夹的根目录:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

这将使所有请求都转到 www.example.com/public,但仅在 URL 中显示 www.example.com。

更难(但正确)的方法:

这完全取决于您将在哪个提供商上托管您的网站,但在 Godaddy 和其他提供商上,您可以选择您网站的根文件夹。在这种情况下,您将选择“公共”文件夹作为根文件夹。我无法为此提供教程,因为此选项取决于每个托管服务提供商的可用性。

编辑:我应该添加以防万一。当您向网站添加内容(例如 CSS/图像/文件以及公众可以访问的所有内容)时,请确保将它们放在公共文件夹中。

【讨论】:

    【解决方案3】:

    您的 VirtualHost 配置需要将DirectoryRoot 进一步指向public/ 目录,以便它可以在该目录中使用其.htaccessindex.php

    【讨论】:

      猜你喜欢
      • 2020-10-22
      • 2016-12-24
      • 2016-05-20
      • 2023-03-26
      • 1970-01-01
      • 2017-08-12
      • 2012-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多