ubuntu安装laravel/lumen5.6
使用命令 composer global require "laravel/lumen-installer" 安装报下错误
问题1:file_put_contents(./composer.json): failed to open stream: Permission denied
解决办法:sudo chown -R $USER ~/.composer/
问题2:由于是国外镜像时间过长解决办法如下
1.切换国内镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
2.安装laravel和lumen安装包
composer global require "laravel/lumen-installer"
3.创建lumen应用
lumen new blog(应用名称)
二.composer create-project laravel/lumen yky --prefer-dist "5.6.*"
三.composer update卡住解决办法
1.建议先将Composer版本升级到最新
composer self-update
2.执行诊断命令
composer diagnose
3. 清除缓存
composer clear
4.若项目之前已通过其他源安装,则需要更新 composer.lock 文件,执行命令
composer update --lock
5.全局配置
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
6.compser update 即可
7.安装完成后修改项目权限避免每次修改文件都要提供密码(仅限linux系统需要修改)
sudo chown -R clj:clj 项目文件名
8.修改项目根目录下public文件夹和storage文件权限
sudo chown -R 751 public/storage
启动lumen5.6的问题
1.No inputfile specified
这个问题是因为php PATHINFO模块没有开启
cgi.fix_pathinfo=1 (把0改为1,如果没有可以手动添加)
2.解决了上面问题又报File not found.这个错误
解决办法
修改nginx配置文件将fastcgi_param 的$document_root改为项目的路径
贴出虚拟主机配置文件
server {
listen 8000;
server_name 127.0.0.1;
location / {
root /home/wwwroot/yky-yh/public;
index index.html index.htm index.php;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi_params;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /home/wwwroot/yky-yh/public$fastcgi_script_name;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /.well-known {
allow all;
}
location ~ /\.
{
deny all;
}
access_log /home/wwwlogs/yky.yh.access.log;
}