2019独角兽企业重金招聘Python工程师标准>>>
由于是Windows环境。所以所有部署环境默认为Windows环境部署。
先安装 Composer 之后按照文档的步骤一步一步来。。
本人采用集成环境phpstudy 用的Apache + php7.0 部署的。
1、服务器要求
Laravel 框架有对服务器有少量要求,当然,Laravel Homestead 已经满足所有这些要求,所以我们强烈推荐使用 Homestead 作为 Laravel 本地开发环境(Mac的话还可以使用Valet作为本地开发环境)。
不过,如果你没有使用 Homestead,那么需要保证开发环境满足以下要求:
- PHP版本 >= 5.6.4
- PHP扩展:OpenSSL
- PHP扩展:PDO
- PHP扩展:Mbstring
- PHP扩展:Tokenizer
- PHP扩展:XML
2、安装 Laravel
Laravel 使用 Composer 管理依赖,因此,使用 Laravel 之前,确保机器上已经安装了Composer。
通过 Laravel 安装器
首先,通过 Composer 安装 Laravel 安装器:
composer global require "laravel/installer"
确保 $HOME/.composer/vendor/bin
在系统路径中,否则不能在任意路径调用 laravel
命令。
安装完成后,通过简单的 laravel new
命令即可在当前目录下创建一个新的 Laravel 应用,例如,laravel new blog
将会创建一个名为 blog
的新应用,且包含所有 Laravel 依赖。该安装方法比通过 Composer 安装要快很多:
laravel new blog
通过 Composer Create-Project
你还可以在终端中通过 Composer 的 create-project
命令来安装 Laravel 应用:
composer create-project --prefer-dist laravel/laravel blog
注:如果要下载其他版本,比如5.3版本,可以使用这个命令:
composer create-project --prefer-dist laravel/laravel blog 5.3.*
。
本地开发服务器
如果你在本地安装了PHP,并且想要使用PHP内置的开发环境服务器为应用提供服务,可以使用Artisan命令serve
,该命令将会在本地启动开发环境服务器http://localhost:8000
:
php artisan serve
当然,更强大的本地开发选择还是 Homestead 和 Valet。
3、应用配置
Public目录
安装完Laravel后,需要将HTTP服务器的web根目录指向public
目录,该目录下的index.php
文件将作为前端控制器,所有HTTP请求都会通过该文件进入应用。
配置文件
Laravel框架的所有配置文件都存放在config
目录下,所有的配置项都有注释,所以你可以轻松遍览这些配置文件以便熟悉所有配置项。
目录权限
安装完 Laravel 后,需要配置一些目录的读写权限:storage
和 bootstrap/cache
目录应该是可写的,如果你使用 Homestead 虚拟机做为开发环境,这些权限已经设置好了。
应用 Key
接下来要做的事情就是将应用的 key(APP_KEY)设置为一个随机字符串,如果你是通过 Composer 或者 Laravel 安装器安装的话,该 key 的值已经通过 php artisan key:generate
命令生成好了。
通常,该字符串应该是32位长,通过 .env
文件中的 APP_KEY
进行配置,如果你还没有将 .env.example
文件重命名为 .env
,现在立即这样做。如果应用 key 没有被设置,用户 Session 和其它加密数据将会有安全隐患。
更多配置
Laravel 几乎不再需要其它任何配置就可以正常使用了,但是,你最好再看看 config/app.php
文件,其中包含了一些基于应用可能需要进行改变的配置,比如 timezone
和 locale
(分别用于配置时区和本地化)。
你可能还想要配置 Laravel 的一些其它组件,比如缓存、数据库、Session 等,关于这些我们将会在后续文档一一探讨。
4、Web服务器配置
美化URL
Apache
框架中自带的public/.htaccess
文件支持URL中隐藏index.php
,如过你的Laravel应用使用Apache作为服务器,需要先确保Apache启用了mod_rewrite
模块以支持.htaccess
解析。
如果Laravel自带的.htaccess
文件不起作用,试试将其中内容做如下替换:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Nginx
如果你使用的是Nginx,使用如下站点配置指令就可以支持URL美化:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
当然,使用 Homestead 或 Valet 的话,以上配置已经为你配置好以支持URL美化。