博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Centos 7 安装composer和Laravel
阅读量:5306 次
发布时间:2019-06-14

本文共 2396 字,大约阅读时间需要 7 分钟。

composer安装

我安装了lnmp到Centos7里,所以可以直接运行
curl -sS https://getcomposer.org/installer | php
把安装的composer.phar放到目录下
mv composer.phar /usr/local/bin/composer

安装成功看版本

composer -v

如果在国外就不用设置这一项,如果不是就弄(中国镜像)

composer config -g repo.packagist composer https://packagist.phpcomposer.com

Laravel安装

安装这个laravel组件

composer global require "laravel/installer"

//查找在哪里

find / -name 'vendor' -type d
//查找结果
/root/.config/composer/vendor/bin

//修改路径

vi ~/.bash_profile

PATH=$PATH:$HOME/bin:/root/.config/composer/vendor/bin //执行保存命令 :wq

启用新的路径,有时候启用会提示没权限的问题,重启电脑就好了

source ~/.bash_profile

进入代码路径
cd /usr/local/src/test

执行生成laravel文件

laravel new laravel

 

也可以到官网下载源码包

https://github.com/laravel/laravel 

 

 解压后,如果没有vendor文件执行

composer install

 

安装相应的拓展文件,出现Whoops, looks like something went wrong执行

打开config/app.php文件把 'debug' => env('APP_DEBUG', false), 改为 'debug' => env('APP_DEBUG', true),

 

我们就看到了错误信息:’No supported encrypter found. The cipher and / or key length are invalid.‘。

找到laravel目录下的.env.example将其重命名.env即可

 

最后还会报一个错误,没有密匙

php artisan key:generate

 

后面安装了laravel5.8版本, 可以从composer install删除

报错:

以及在lnmp下无法运行,你需要以下几步

1.php.ini文件下寻找cgi.fix_pathinfo,将其值设置为1;

2. /usr/local/nginx/conf/fastcgi.conf 里面的 fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启 nginx。

3. lnmp会生成.user.ini文件防止跨域,这玩意还无法删除,如果需要删除。

chattr -i  /home/wwwroot/laraveltest/public/.user.ini

rm -rf  /home/wwwroot/laraveltest/public/.user.ini

4.nginx.conf 修改成这样

server {  listen 80; # 监听端口  server_name www.xxx.com # 指定解析的域名  root /home/wwwroot/www.xxx.com/public; # 网站的根目录,laravel要指定到网站根目录下面的public文件夹  location / {      index index.html index.htm index.php;      try_files $uri $uri/ /index.php?$query_string;       # 这一句是laravel部署必须的,将index.php隐藏掉  }  # 这一段是解析php文件的引导,模拟PATH_INFO的模式  location ~ \.php(.*)$ {      fastcgi_pass unix:/tmp/php-cgi.sock;      fastcgi_index index.php;      fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;      fastcgi_param SCRIPT_FILENAME     $document_root$fastcgi_script_name;    fastcgi_param PATH_INFO $fastcgi_path_info;    fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;    include fastcgi_params;  }}

 

 

如果还有错误的话,那我们需要查看 PHP 代码日志来排查问题

我们在 /usr/local/php/etc/php-fpm.conf 加上

php_admin_value[error_log] = /usr/local/php/var/log/php_errors.logphp_admin_flag[log_errors] = on

 如果有虚拟域名还需要在host文件新增

vi /etc/hosts

 

转载于:https://www.cnblogs.com/huanghuahui/p/10792378.html

你可能感兴趣的文章
通过httplib2 探索的学习的最佳方式
查看>>
快来熟练使用 Mac 编程
查看>>
Node.js 入门:Express + Mongoose 基础使用
查看>>
一步步教你轻松学奇异值分解SVD降维算法
查看>>
使用pager进行分页
查看>>
UVA - 1592 Database
查看>>
Fine Uploader文件上传组件
查看>>
javascript中的传递参数
查看>>
objective-c overview(二)
查看>>
python查询mangodb
查看>>
consonant combination
查看>>
驱动的本质
查看>>
Swift的高级分享 - Swift中的逻辑控制器
查看>>
Swagger简单介绍
查看>>
Python数据分析入门案例
查看>>
vue-devtools 获取到 vuex store 和 Vue 实例的?
查看>>
Linux 中【./】和【/】和【.】之间有什么区别?
查看>>
内存地址对齐
查看>>
看门狗 (监控芯片)
查看>>
css背景样式
查看>>