阿里云上安装并运行Laravel(Lamp)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Myriad_Dreamin/article/details/80202206

Lamp的安装就不说了,随便在网上搜索就能搜索到。
我很久以前就打算自己写一个个人博客,写了一点——渐渐认识到了一些需要改变的东西。于是打算重新来过,我因此选择了Laravel.
好了,什么都不懂的小白我开始慢慢折腾了。

坑1 阿里自带镜像

可能是我不太会用,因为我之前并没有接触过这种操作,我以前都是写c++小程序跑一跑的,并没有接触过项目,甚至连linux系统都没怎么接触过。我还是要吐槽阿里云自带的lamp应用镜像,阿里自带的镜像并不是不能用,我一开始的无框架个人博客就是在原镜像上运行的,然而当我开始装laravel的时候,自带镜像在php上的问题就开始出现了。
当然,我们当今互联网发展,很多问题都可以直接到网上去找,所以我摸爬滚打也装好了很多扩展。然后关键来了:composer是phar文件,阿里云自带的镜像缺失phar.phar!
这近乎是无解的,因为我们也不知道阿里云镜像的配置,作为小白的我也不可能把种种配置之间造成的相互作用搞得一清二楚。搜索百度,谷歌十几种搜索前十页所有的方法都尝试了,phar.phar还是永远的missing。这可不得不使人感到沮丧。
我因此决定放弃阿里云提供的lamp镜像,所幸在这个坑的摸索中我稍微掌握了linux的一些配置和操作命令,也不是毫无所获!

坑2 SSH

ssh的配置说难也不难。这里说一下自己碰壁的几个地方:
1.关于root连接。
当我们生成过密钥以后,通过账户密码的设定就被取消了
我们到/etc/ssh/的设置中把passwordauthentication后面的no改成yes,第一个小问题就算是解决了。
2.关于hostkey verification。
这里说一下.ssh是根目录下的隐藏文件夹,而不是你用户的文件夹!如果你随意修改admin文件夹中隐藏的.ssh文件夹,有可能导致阿里云提供的远程连接无法使用。这使得我不得不重新安装自己的系统镜像,所有前面的工作功亏一篑。

cd ~
ls -a

通过这个我们就能看到隐藏的.ssh文件夹。
还有就是.ssh中的known_hosts也是隐藏的!
3.sublime text 3中sftp因为hostkey verification failed的提醒的意思
我纠结于linux上面各种设置,修改了很多地方都没能完成。最后我在查阅一位热心网友提供的解决方案时,发现sublime text的意思是修改windows中regedit(注册表)的设定。
当然如果不不是用sublime text的话你可能不会遇到和我一样的问题。

坑3 mysql/composer.phar

经过前面种种苦难,虽说算不得很熟悉linux系统,也是从lv.0提升到了lv.2。于是我们很熟练地又一次重装了系统(辛酸)。这一次我们很容易就把amp装好了,我们选择的是CentOS7.3系统。
我们的实验环境如下:

CentOS7.3
(apache)httpd:2.4.6
mysql:5.6.40
php:7.0.29

1.关于mysql提供对外访问。
虽然很简单,但还是绕了弯路。
首先把各种设定设置好,打开阿里云提供的数据库控制台。登陆的时候控制台提示ip未被允许访问。
于是我们倒回去修改mysql,按照网上的指令“grant”我们使任意或者控制台提供的ip能够访问数据库。
这时候又出现了一个错误:大意是我mysql应该是240??号的版本,你现在运行的却不是。查网页得知我们需要用mysql_update。
直接用是不行的,我们在后面添加-p输入password提供权限,才能够进行修改。
更新好了以后重新运行“grant”命令,mysql顺利能够被控制台访问!
2.关于composer.phar:
按照网上提供的安装办法,我们在使用mv composer.phar /usr/local/bin/composer(不要问我怎么记下来的)之后系统仍然提醒composer命令不存在。尝试了很多次,查询了很多网页,我找到了问题所在。
到/usr/local/bin目录下,我们发现composer静静的躺在那里。执行php composer以后我成功运行了composer,看来是环境变量的问题。直接把/usr/local/bin设置为环境变量,问题解决了。

最后大结坑 lavarel

比起前面一群各种奇葩的问题,lavarel反而是最正常的,当然也是相对的。
首先,按照网上的安装办法,我们依然遇到了问题:
在composer globe request’lavarel’的时候,系统一直提醒没有能够完成安装,并且没有任何补救提示,显然除了lavarel get方面的问题,其他都是无问题的。
我们继续查阅各种文章,在某一篇文章中找到了方法二:直接get lavarel5.2安装:好的上一个问题解决了。
在安装的时候发生了错误,阅读错误信息我们发现是因为一个dom扩展missing了,直接使得安装的时候出现了十几个错误。安装dom以后,把之前未安装成功的lavarel文件夹强制删除,重新安装,成功了。
最后的最后,将apache修改为lavarel/public以后,重启apache,主页变成了public下的index.php,浏览器提醒我们500错误。
所幸有人用两天的时间找到了错误所在:lavarel/storage的权限不足。在lavarel根目录下chmod -R 777 storage,lavarel的测试界面终于在浏览器中显示了!

猜你喜欢

转载自blog.csdn.net/Myriad_Dreamin/article/details/80202206