您的位置:首页 > 编程语言 > PHP开发

阿里云ubuntu16上部署LNPM-laravel遇到的若干坑

2017-05-21 13:32 120 查看
我在自己电脑的ubuntu16上部署LNPM-laravel,相对比较顺利,但在阿里云上部署就遇到了若干问题,很多问题原因不详,记录如下:

1.阿里云的坑:

坑a.阿里云ubuntu 的apt 功能有bug,开箱不能用,解决方法:

rm -rf /var/lib/apt/lists/*

apt-get update

坑b.端口的开放权限在控制台的安全组设置,这一点在官方文档中言之不详,所以安装了nginx,网站无法访问

2.git 的坑

用git clone 拷贝了laravel项目后,修改项目权限为777,这时git认为文件已经发生变化,pull的时候就发生错误,而我在自己的ubuntu系统中没遇到这种情况。所以改变权限后要push

3.laravel的坑

坑a. laravel5.4,用artisan make:auth创建用户系统后,migrate会发生错误,这时laravel5.4固有的一个bug,不知如此明显的bug,为何没被修复。原因是迁移表中,string被定义为无限长,如果没有限制长度的字段设置索引就会发生错误,解决方法就是为email等有索引但没设置长度的字段设置长度。

b.迁移表中无法使用enum,解决方法是:

/vendor/doctrine/dbal/lib/Doctrine/DBAL/Platformsn/MySqlPlatform.php

文件下有个

protected function initializeDoctrineTypeMappings() 方法,

在其下的 $this->doctrineTypeMapping 数组中添加:

'enum' => 'string',

c.在阿里云上migrate, 添加外键出错,原因不详,我没有解决这个问题,只是暂时把外键取消
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: