使用 laravel/installer 创建新应用程序只显示文件结构而不是网站
Posted
技术标签:
【中文标题】使用 laravel/installer 创建新应用程序只显示文件结构而不是网站【英文标题】:Creating new app with laravel/installer shows just file structure not website 【发布时间】:2018-09-27 18:15:40 【问题描述】:我刚决定开始学习 Laravel。通过关注Getting Started,对我来说最简单的解决方案似乎是开始使用 laravel 安装程序。
所以我所做的是全局安装安装程序,然后简单地通过laravel new laravelapi
创建新项目。
在 cli 准备好之后,我用我的数据库信息编辑了 .env
文件,并将 APP_URL
更改为 http://localhost/laravelapi/(我使用的是 XAMPP,laravelapi 是我的项目名称)。不幸的是,当我在该 URL 上打开浏览器时,我只看到文件,而不是呈现的网站。
有趣的是,当我打开 http://localhost/laravelapi/server.php
站点时正确加载(这只是一些琐碎的 laravel 默认页面)
我想知道htaccess
是否正常工作我试图检查我的apache 是否有mod_rewrite
作为他加载的模块之一,但它在那里。
我真的是新手,我显然错过了一些重要的事情,但我在这里与它战斗了几个小时,没有任何结果。以前有人遇到过这个问题吗?如果有,解决办法是什么?
【问题讨论】:
Laravel 项目的文档根目录是public
目录:你需要修改你的目录根目录。 public/index.php
文件是您网站的入口点:用户永远不能访问 public
之外的任何内容。
index.php 在公用文件夹中移动到该目录,或者您可以使用 serve Artisan 命令:php artisan serve
谢谢!它解决了我的问题。随意将其添加为答案,让我将其标记为正确。顺便说一句,有没有办法轻松改变它?所以root会在/
上?
【参考方案1】:
我有同样的问题,但我解决了这个问题。当我们安装 Laravel 时,.htaccess 文件在 public 文件夹中。
从公用文件夹中剪切 .htaccess 文件 将此文件粘贴到项目的根文件夹中【讨论】:
为什么这被否决并且有效?确保在移动文件后重新启动 apache。【参考方案2】:我遇到同样的问题是错误背后的两个原因。
一个不是放在根目录中的正确.htaccess
文件。
其他 php
版本与你的 laravel 当前版本(低 PHP 版本)不兼容。
【讨论】:
【参考方案3】:通过“http://localhost/laravelapi/public”访问项目不是很好的做法
您可能会在符号链接或托管项目时遇到问题。为您的 PHP 项目提供 vHost 非常好。
您可以为 xampp 创建一个虚拟主机,并将文档根目录添加到 Laravel 项目的公共目录中,例如“../Project/laravelapi/public”。
你也可以使用内置的开发服务器命令php artisan serve
这将在“http://localhost:8000”上启动您的服务器。
更多有用的链接 1. Laravel 文档 - here 2. Xampp 的虚拟主机 - Here
【讨论】:
【参考方案4】:Laravel 项目的文档根目录是 public
目录。所有用户请求都应路由到public/index.php
,除非请求的文件存在于public
目录中——例如:assets。
您可以按照this *** answer中提供的步骤更改xampp操作项目的文档根目录。
【讨论】:
以上是关于使用 laravel/installer 创建新应用程序只显示文件结构而不是网站的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Windows 上通过 Laravel Installer 安装 Laravel?
laravel/lumen-installer 安装失败:guzzlehttp/guzzle 锁定在 6.3.0