从 0 开始在 VPS 上部署 Laravel (Ubuntu 14.04)

准备工作

首先,你需要有一个 VPS,我这里以 Ubuntu 14.04 为例,来说说怎么部署一个最简单的 Laravel 应用。我这里都是以 root 权限运行,如果不是 root 用户,请在命令前加上sudo

安装语言包并设置默认语言

这样设置了之后可以防止之后因为编码错误而造成的一系列问题
apt-get update
apt-get install -y language-pack-en-base unzip
locale-gen en_US.UTF-8

安装 PHP7 的准备工作

apt-get install -y software-properties-common
LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php
apt-get update

安装 PHP7 & nginx & MySQL5.6

apt-get install -y php7.1 php7.1-mysql php7.1-fpm php7.1-curl php7.1-xml php7.1-mcrypt php7.1-json php7.1-gd php7.1-mbstring nginx mysql-server-5.6
安装 MySQL 的时候要输入 root 密码,记住这个密码
mysql-password

安装完后打开浏览器,输入 VPS 的 IP 地址,看到如下网页,则说明安装成功。
nginx-setup

配置 PHP 和 nginx

配置 PHP

vi /etc/php/7.1/fpm/php.ini
;cgi.fix_pathinfo=1改成cgi.fix_pathinfo=0
vi /etc/php/7.1/fpm/pool.d/www.conf
配置listen = /var/run/php7.1-fpm.sock
之后重启 php-fpm service php7.1-fpm restart

配置 nginx

vi /etc/nginx/sites-available/default
参考如下修改 nginx 的配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/laravel/public;
index index.php index.html index.htm;
# Make site accessible from http://localhost/
server_name localhost;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php7.1-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

部署 Laravel

安装 composer

1
2
3
4
5
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar /usr/local/bin/composer

配置 Laravel

把文件larave上传至/var/www/目录下
修改storage文件夹权限chmod -R 775 /var/www/storage/
修改 www 文件夹权限 chown www-data:www-data -R /var/www/
编辑envDB_PASSWORD=root中的root改为之前设置的密码
之后运行命令mv env .env
运行composer install,在国内的话,安装时间会比较长

安装完成

现在打开浏览器访问 VPS 的 IP 地址来看看效果吧。
larave

参考文档

从零开始部署 Laravel 项目
Download Composer


从 0 开始在 VPS 上部署 Laravel (Ubuntu 14.04)
https://slw.im/2016/08/deploy-lavaral-on-ubuntu/
作者
Ryo Shen
发布于
2016年8月25日
许可协议