配置
简介
和 Laravel 不一样的是,Lumen 只是用单一的 .env
配置文件来配置框架的各个方面。Lumen 框架自带的 .env.example
文件可以作为你的模板文件使用。
注意: 如果你喜欢使用
vlucas/phpdotenv
库来加载环境变量到$_ENV
这个 PHP 超级全局变量的话,你需要将bootstrap/app.php
文件中调用Dotenv::load
方法的代码注释掉。
安装之后需要做的工作
Lumen 只需非常少量的配置就可以使用了。然而,你需要设置 .env
文件中的 APP_KEY
配置项。这个配置项的值应该是一个包含 32 个字符的随机字符串。
然而,你可能还需要为以下几个来自 Laravel 的组件做一些配置:
注意: 绝对不要在生产环境中将
APP_DEBUG
配置项设置为true
。
权限
Lumen 需要对几个目录设置一下权限: storage
下面的文件夹已经 bootstrap/cache
目录都需要为 web 服务器赋予写权限。
配置文件
默认情况下,Lumen 使用单一的 .env
文件配置你的应用程序。当然,如果你需要的话仍然可以使用 Laravel 风格的配置文件。默认配置文件位于 vendor/laravel/lumen/config
目录下。如果你在项目的根目录下的 config
文件夹下放置了一份你自己的配置文件的话,Lumen 将加载你的这份配置文件。
使用完整版的配置文件(也就是 Laravel 风格的配置文件)能够让你配置 Lumen 的更多方面,例如配置多个存储 "disks" 或 read / write 数据库连接。
自定义配置文件
也许你需要创建自己定义的配置文件并使用 $app->configure()
方法加载他们。例如,假设你的配置文件位于 config/options.php
,你可以通过如下方式加载它:
$app->configure('options');
优雅链接
Apache
Lumen 框架通过 public/.htaccess
文件来让网址中不需要 index.php
。如果你的网页服务器是使用 Apache 的话,请确认是否有开启 mod_rewrite
模块。
如果 Lumen 自带的 .htaccess
文件在所安装的 Apache 环境下无法正常使用的话,请尝试下面这个方法:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Nginx
对于 Nginx,为你的网站增加如下配置就可以使用“优雅链接”了:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
当然,如果使用的是 Homestead,优雅链接已经被自动配置好了。