下载并安装composer
将安装程序下载到当前目录
[root@localhost ~]# php -r“copy('https://getcomposer.org/installer','composer-setup.php');”
安装composer
[root@localhost ~]# php composer-setup.php
初始化composer
[root@localhost ~]# php composer.phar
删除安装文件
[root@localhost ~]# php -r“unlink('composer-setup.php');”
配置composer
移动当前目录文件composer.phar到bin目录
移动当前目录文件composer.phar到
/usr/local/bin/composer
, 如果/usr/local/bin/
不存在则手动创建,一般都存在
[root@localhost ~]# mv composer.phar /usr/local/bin/composer
测试composer是否安装成功
[root@localhost ~]# composer
出现了上面的画面说明composer可以正常使用了
使用Composer创建laravel项目
使用 Composer 下载 Laravel 安装包
[root@localhost ~]# composer global require "laravel/installer"
添加环境变量
> 创建并打开文件
[root@localhost ~]# vim /etc/profile.d/composer.sh
> 输入以下文件内容
export PATH=$PATH:/root/.config/composer/vendor/bin/
> 保存并退出
:wq!
> 使用 `source` 立即生效当前环境变量
[root@localhost ~]# source /etc/profile.d/composer.sh
请注意: 如果没有将这个环境变量加入到PATH中,
在下面执行
laravel new project_name
时会找到不到laravel
命令!
使用 laravel new 命令创建新项目
> 将目录切换到 `/data/www/` 项目存放目录下
[root@localhost www]# cd /data/www
> 使用 laravel new 创建新项目名称为 laravel
[root@localhost www]# laravel new laravel
看到上面如图所示laravel项目也就生成成功了!
创建nginx虚拟主机
使用nginx的反向代理, 使其nginx反向php解释器完成通信工作, 也就是php-fpm它其实就是cgi
这么说吧当用户访问web站点时, 客户端浏览器向nginx服务器发送请求,
nginx服务器在接收到请求后会向php-fpm传达要完成的工作, 工作处理完成返回给nginx服务器,
nginx再将php-fpm处理的结果返回给浏览器, 客户端浏览器解析后出现在页面中,
这样用户也就看到了页面呈现内容了!
创建项目日志目录
> 创建laravel项目日志目录
[root@localhost www]# mkdir -p /data/logs/nginx/laravel/
虚拟主机配置文件
server {
# nginx服务器监听端口号为80
listen 80;
# nginx服务器名, 也就是域名
server_name larame.dev www.larame.dev;
# 项目根目录
root /data/www/laravel/public;
# 项目索引文件类型
index index.html index.htm index.php;
# 无需用到 HTTPS 故注释
# listen 443 ssl http2;
# ssl_certificate /etc/nginx/ssl/xxx.com.crt;
# ssl_certificate_key /etc/nginx/ssl/xxx.com.key;
# nginx服务器默认字符编码格式
charset utf-8;
# 路由重写
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# 静态特定资源引用声明
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
# access_log off 访问日志
access_log /data/logs/nginx/laravel/laravel.dev-access.log;
# error_log 错误日志,指定路径后可选开启。末尾值可选 error|notice|info
error_log /data/logs/nginx/laravel/laravel.dev-error.log error;
sendfile off;
# 允许客户端最大上传文件大小
client_max_body_size 100m;
# php动态脚本访问规则
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# 如果用到 sock 则值参考 unix:/var/run/php/php7.0-fpm.sock
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/www/laravel/public/$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
include fastcgi_params;
}
# 分布式配置文件使用规则
location ~ /\.ht {
deny all;
}
}
nginx服务器加载新配置文件
[root@localhost www]# systemctl reload nginx.service
修改项目目录所属组及用户
至于为什么要修改为nginx用户组及用户
原因是这样的,
因为nginx和php-fpm都用nginx用户组及用户运行的所以也必须将项目目录所属用户组及用户设置为nginx
要不然总是有一个
500
的错误,你可能会发现运行其它不是laravel项目的项目总是可以的, 而一运行laravel项目就会访问不了, 还给了一个
500
万(哈哈)你要是细心的话你可以打开PHP的错误日志你就会发现这个问题, 会提示某某个文件加载时没有权限!
[root@localhost ~]# chown -R nginx:nginx /data/www/laravel/
修改laravel相关目录的写权限
在没有修改laravel目录的
storage
和bootstrap/cache/
你会发现nginx会给了你500
万!
修改目录权限即可还她
500
万!
> 修改储藏目录的写权限
[root@localhost ~]# chmod -R 0777 /data/www/laravel/storage/
> 修改缓存目录的写权限
[root@localhost ~]# chmod -R 0777 /data/www/laravel/bootstrap/cache/
开始你的laravel之旅吧
希望本文对你的工作和学习有所帮助
如果觉得还不错怎么感谢我呢? 妈呀! 点赞啊!
Good Luck! from warnerwu at 2017.07.12 AM