Laravel 项目README
1. 下载
推荐使用git
对应的master
分支上获取项目的最新代码,使用命令git clone https://github.com/curder/example
。
2. 环境文件
在项目的根目录中附带一个.env.example
文件,请将其拷贝重命名为.env
。可以使用如下命令完成操作cp .env.example .env
。
注意:确保您的系统上显示隐藏的文件。
3. Composer
laravel项目依赖通过[composer](http://getcomposer.org/)
工具进行管理。
第一步是通过在终端中进入到项目中并输入以下命令来安装依赖
composer install
4. NPM/Yarn
为了安装用于前端开发的JavaScript包,您需要使用Node
包管理器,或者可选的Yarn包装管理器(推荐)
如果您只安装了npm,则必须从项目的根目录运行此命令:
npm install
如果您安装了Yarn
,请从项目的根目录运行此操作
yarn
5. 创建数据库
在服务器上创建数据库,然后更新项目根目录下的.env
文件上如下的相关行:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
更新上面的行已完成数据库相关设置。
6. artisan命令
我们要做的第一件事就是设置 Laravel 在进行加密时使用的密钥。
php artisan key:generate
应该看到一条绿色消息,指出您的密钥已成功生成,以及你应该看到.env
文件中的app_key
变量反映出来。
现在是时候查看数据库连接信息是否正确。运行内置的迁移来创建数据库表
php artisan migrate
如果没有看到错误,应该会看到每个迁移表的消息,而不是数据库连接信息很可能不正确。
运行数据库迁移文件以添加一些默认数据
php artisan db:seed
应该得到每个迁移文件的消息,并且应该可以看到数据库表中的信息。
7. NPM Run "*"
既然已经拥有数据库表和默认行,则需要构建样式和脚本。
这些文件是使用laravel mix生成的,laravel mix是许多工具的包装,并且在项目的根目录下运行webpack.mix.js。通过执行下面的命令:
npm run <command>
可用的命令列在package.json
文件的scripts
键下的顶部。
您将在屏幕上看到大量信息,然后在最后提供一张表格,说明编译的内容和文件的位置。
此时您已完成,您应该能够在本地浏览器中查看该项目并查看该项目。
8. PHPUnit
安装项目后,确保运行测试套件以确保所有部件都正常工作。
在项目根目录下运行下面的命令
phpunit
您会看到每个数百个测试都会出现一个点.
,然后在最后提供通过测试的数量。全新的安装应该没有失败。
9. Storage:link
安装项目后,您必须运行此命令以链接您的公用存储文件夹以进行用户文件上传
php artisan storage:link
10. 登录
在项目安装完成后,您可以在浏览器中访问它,点击导航栏右侧的登录按钮。
管理员账号信息是:
用户名:admin@admin.com
密码:123456
成功登录后将被自动重定向到后端。
如果之前在数据库迁移文件中更改了这些值,那么显然应该使用更新的值。
Web服务器配置
Nginx
如果当前环境使用的是 Nginx
,请在config配置中加入以下内容,它将会将所有请求都引导到 index.php
单入口文件。
location / {
try_files $uri $uri/ /index.php?$query_string;
}
Apache
项目使用 public/.htaccess
文件来为前端控制器提供隐藏了 index.php
的优雅链接。如果当前环境使用了 Apache
作为Web服务器,请务必启用 mod_rewrite
模块,让服务器能够支持 .htaccess
文件的解析。
如果项目附带的 .htaccess
文件不起作用,就尝试用下面的方法代替
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
其他优化
php artisan config:cache # 配置信息缓存
php artisan route:cache # 路由缓存
php artisan optimize # 类映射加载优化
composer dumpautoload # 自动加载优化