Laravel环境搭建

一、操作系统

CentOS 7.2 64位。

二、挂载数据盘

这里有详细的教程,具体地,执行以下命令:

fdisk -l
fdisk /dev/vdb
n
p
回车3次
wq

再次

fdisk -l

可以看到数据盘已经建立。
执行:

mkfs.ext4 /dev/vdb1

创建文件系统。
备份一下fstab(也可以跳过):

cp /etc/fstab /etc/fstab.bak

写入分区信息:

echo /dev/vdb1 /data ext4 defaults 0 0 >> /etc/fstab

创建data目录:

cd /
mkdir data

挂载文件系统:

mount /dev/vdb1 /data

执行:

df -h

如果出现新建文件系统的信息,说明挂载成功,可以使用新的文件系统了。

三、安装OneinStack

选择OneinStack的自动安装

OneinStack自动安装配置

执行生成的自动安装命令

cd /data
wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --nginx_option 1 --php_option 5 --phpcache_option 1 --php_extensions imagick --phpmyadmin  --db_option 5 --dbinstallmethod 1 --dbrootpwd password --pureftpd  --redis  --memcached  --iptables  --reboot 

等待安装结束(大约30分钟)。
记得改一下/data/wwwroot/default/phpMyAdmin目录的名称。
记得在iptables中打开3306端口

iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
service iptables save
service iptables restart

如果想仅允许指定IP访问

iptables -A INPUT -p tcp -s 192.168.1.1 -dport 3306 -j ACCEP

四、安装SVN

执行:

cd /data
yum -y install subversion

在/data目录下新建SVN目录,然后启动SVN:

cd /data
mkdir svn
svnserve -d -r /data/svn

建立SVN项目:

svnadmin create /data/svn/projectName

修改配置文件conf/authz:

[/]
user1 = rw
user2 = rw

修改配置文件conf/passwd:

[users]
user1 = password1
user2 = password2

修改配置文件conf/svnserve.conf,去掉这几行前的#号,改成这样:

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

cd到hooks目录,拷贝一份post-commit.tmpl:

cd /data/svn/projectName/hooks
cp post-commit.tmpl post-commit

打开拷贝的post-commit
在#!/bin/sh一行后面加上:

export LANG=en_US.UTF-8
/usr/bin/svn update --force /data/wwwroot/projectName

然后注释掉最后一行:

# mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf

修改post-commit权限:

chmod 777 post-commit

重启SVN:

killall svnserve
svnserve -d -r /data/svn

将SVN加入到开机自动启动:

vi /etc/rc.d/rc.local

写入:

/usr/bin/svnserve -d -r /data/svn

不知道SVN安装到哪里,可以用whereis:

whereis svnserve

为SVN指定编辑器:

vim /etc/bashrc

在最后加入:

export SVN_EDITOR=vim

保存,然后执行以下命令使其立即生效:

source /etc/bashrc

五、安装composer

执行:

cd /data
curl -sS https://getcomposer.org/installer | php

如果提示

Failed to decode zlib stream

则执行下边的语句:

php -r "readfile('https://getcomposer.org/installer');" | php

然后执行下边的语句,使composer可以全局运行:

mv composer.phar /usr/local/bin/composer

六、安装Laravel

执行:

cd /data
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer global require "laravel/installer"

等待安装完成(大约15分钟)。

vim /usr/local/php/etc/php.ini

去掉以下的disable_functions:

proc_open
proc_get_status
symlink

然后重启PHP:

service php-fpm restart

更新源(国内)

composer config -g --unset repos.packagist
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
composer config -l -g

创建项目(可能需要等几分钟才显示):

cd /data/wwwroot
composer create-project --prefer-dist laravel/laravel projectDir "5.5.*"

等待安装结束(大约10分钟)。

七、提交至SVN

checkout刚才的SVN目录:

cd /data/wwwroot
svn co svn://localhost/projectName projectDir

这里也可以直接拷贝原有的代码zip到目录中。
可使用pure_ftpd,需要阿里云防火墙开放20000/30000端口,并在服务器上执行以下指令:

chmod 777 tmp

如果是旧目录拷贝过来的,还要先清理原来的svn文件

find -name ".svn" -exec rm -rf {} +

把刚建的svnadmin目录UUID改过来

svnadmin setuuid /data/svn/projectName xxx..uuid...xxx

在新目录中,重新生成密钥,清空原来的缓存(否则可能不会更新视图)

php artisan key:generate
php artisan config:cache
php artisan route:cache
php artisan view:clear
composer dump-autoload
cd projectDir
chmod -R 777 storage
chmod -R 777 bootstrap/cache
php artisan storage:link

提交:

cd /data/wwwroot/projectDir
svn add . --no-ignore --force
svn ci

八、安装虚拟主机

记得要指向public目录:

cd /data/oneinstack
./vhost.sh

顺便可以安装fileinfo(文件保存时需要用到):

./addons.sh

等待安装结束(大约1分钟)。

九、完成!

在域名控制台新建A记录到主机IP,通过浏览器访问,能显示主页即为安装成功。


浏览器打开的项目主页
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,753评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,668评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,090评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,010评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,054评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,806评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,484评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,380评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,873评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,021评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,158评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,838评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,499评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,044评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,159评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,449评论 3 374
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,136评论 2 356

推荐阅读更多精彩内容