【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境

本人小白,此文记录最近的一次经历:阿里云服务器到期后,购买腾讯云服务器并将域名从阿里云转入腾讯云,然后新建网站的过程,下文包括建站流程、遇到的问题和解决方案。有哪里写的不对的地方请指出来呀~
前景:由于正好要建立新的网站,所以之前阿里云服务器上的网站文件没有做数据迁移,到期后自动释放掉了。以下算是一个全新的开始。

~建站前的准备①:域名转出阿里云服务器,转入腾讯云服务器

因为我当初的域名是在阿里云注册的,现在使用腾讯云服务器,需要将域名从阿里云转入到腾讯云域名服务内。首先要在阿里云提交域名转出申请,然后会以邮件的方式获取域名转移密码。
获取转移密码后,按照腾讯云文档的步骤(填写域名和转移密码、绑定实名信息模板、续费一年域名)进行操作,具体步骤:域名转入腾讯云
大概5天后域名成功转入腾讯云。
域名转入成功后记得重新从腾讯云进行备案。

~建站前的准备②:购买腾讯云服务器

首先要进行腾讯云的实名认证,购买云服务器,我选择的是腾讯云推出的学生方案,S3.SMALL2(标准型S3,1核2GB)。【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第1张图片

建站步骤①:域名解析到腾讯云服务器

从腾讯云控制台找到服务器的公网ip,如下图所示添加两条新的解析记录,将域名解析到公网ip。
例如你的网站域名是yuming.com,@表示在地址栏中输入yuming.com可以访问到你的网站;www表示在地址栏中输入www.yuming.com可以访问到你的网站。添加这两条就代表不论从yuming.com还是www.yuming.com都可以访问你的网站。
TTL表示延迟,单位是秒。600秒后生效,也就是600秒之后你的域名就成功解析了。
【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第2张图片

建站步骤②:重装腾讯云服务器,安装宝塔Linux面板

进入实例控制台,在右侧操作栏中选择 【更多】-【重装系统】,设置主机的时候,从镜像市场选择镜像,选择腾讯云定制版宝塔Linux面板,设置root的密码,开始重装。
【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第3张图片
重装完成后,还不能直接通过宝塔面板访问服务器,因为宝塔面板是通过端口8888来进行访问的,还要配置服务器的安全组。

建站步骤③:配置服务器安全组

新建安全组名为【宝塔常用端口放行】,添加如下11条入站规则
【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第4张图片
【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第5张图片
入站规则添加完后,添加出站规则。出站规则与入站规则一样。
添加完后一定不要忘记将新添加的这个安全组关联到实例!只有关联到实例安全组才会生效。
然后就可以通过8888端口访问服务器了~地址栏输入公网ip地址:8888,就可以访问宝塔面板,首次访问需要设置管理员的用户名和密码,以后每次访问宝塔面板都需要用这个管理员账号登录。

建站步骤④:配置服务器环境,安装LNMP/LAMP套件

首次登录宝塔面板后,会弹窗提示你安装LNMP或LAMP套件,宝塔会推荐你安装LNMP,我最开始也是安装的LNMP,但是后面配置php的时候出了点问题,后来换成了LAMP,又进行了相关调试后才解决了。我是小白我不太懂,可能是我个人原因导致的问题,这些内容放在后文php部分说。所以使用LNMP还是LAMP看大家自己选择吧。

建站步骤⑤:宝塔面板绑定域名,申请SSL证书

LNMP/LAMP安装完成后,点击左侧菜单栏的【网站】-【添加站点】,绑定网站域名,并创建FTP和数据库。
绑定之后应该是这个样子,然后在左侧的【SSL】菜单中申请免费SSL证书,就可以了。
【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第6张图片
到这里建站基本就完成了,把网站文件夹上传到网站根目录就可以进行访问了。
【全流程记录】域名转出+腾讯云服务器建站+安装宝塔Linux面板+配置php环境_第7张图片

配置php环境时出现的问题以及相关解决方案

环境:LNMP

问题:在上传网站文件后,发现所有静态页面(.html文件)都可以正常访问,但php页面表单提交后会出现 nginx 502 Bad Gateway。在本机xampp、phpstudy等进行测试,网站程序运行正常,并且可以提交表单数据存储到数据库。说明不是代码的问题,大概率是环境配置的问题。

解决方案:萌新一个,只好百度。
尝试了如下方法:1.清除浏览器缓存,不管用;
2.查看是否启用php服务。php服务正常运行
3…查看nginx的错误日志,是空的,说明可能不是nginx的问题;
4.查看php-fpm的日志,都是NOTICE,没有出现WARNING。

最终解决方案:实在不知道怎么办,由于从来没有使用过nginx,我就直接从宝塔面板卸载了nginx,重新安装了apache。(简单粗暴)

环境:LAMP

问题①:换了apache之后刷新页面,一上来就出现503 The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
解决方案:我一开始以为我写了什么死循环,导致服务器宕机了,但是之前也反复检查了源码,并没有问题。后来想起来,卸载nginx重装apache之后没有重启服务器,会不会是这里的问题呢,然后重启服务器。

问题②:重启服务器之后,503问题解决,但又出现了新的问题,Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in.
解决方案:这是说mysql_connect()将在未来弃用,让使用mysqli或者PDO。修改代码为使用mysqli方法。

问题③:改为mysqli方法后,错误信息变为了:Warning:mysqli_connect(): (HY000/2002)No route to host
解决方案:查看服务器数据库的主机信息,发现主机名称并不是公网ip地址,而是localhost,遂修改……

问题④:这下总该没问题了吧,为什么还是无法向数据库中插入信息呢??
解决方案:后来又发现是因为现在所使用的数据库用户的权限不够……没有权限对表中的数据增删改查,怪不得还是失败呢_(:з」∠)_,给了相关权限后,网站一切运行正常,终于大功告成啦!

总结:以上就是我前几日的建站全流程记录和总结,感觉对我这个小白来说是个值得记录下来的经历。感觉自己只是磕磕绊绊地建起来了,但其中的原理还不是很了解,所以继续摸爬滚打,日后有机会学了更多再来完善吧。

你可能感兴趣的:(php,云服务器)