将网站部署到服务器过程中遇到的一些问题

步骤:(比较笼统的步骤,刚开始想的流程就是下面这些)

  1. 购买配置一台服务器。
  2. 将自己开发的网站放上去。
  3. 然后通过网址或者ip地址访问。

上个月大佬帮忙代配了一台linux服务器,刚好自己也写了一个网站,于是就有了下面的事:

已知:一个ssh-bj.pem文件,服务器ip地址。

目标:能通过ip地址访问自己写的一个网站。

问题一:' .pem '文件是什么?

菜鸟一个,不知道这个东西是啥,然后google一下:.pem 是一种容器格式,可能仅包含公钥证书,也可以包含完整的证书链(包括公玥,私钥,和根证书)。也可能用来编码 CSR文件。

看到这个之后,大概明白了这个就相当于你登录服务器时的密码。然后又看到了一些pem、 .p12、.cer、pkcs 等文件格式。当时想着是不是要将.pem文件格式转成别的,然后又下载了openssl这个应用,但是下好了之后一转得到了这个ssh-bj.p7b文件,这个文件格式是一种证书格式,当时觉得可能要的不是这个。然后掉头,然后就通过搜索知晓了:不需要打开它,登录服务器的时候直接用就行了。

然后就比较顺利,通过Ubuntu登录上去了。

将网站部署到服务器过程中遇到的一些问题插图

然后问题又来了:

问题二:我在服务器内怎么拿到写的代码?

这个当时马上就想到了:从github上拉取。然后在ubuntu内安装git,使用git clone克隆github上的仓库到服务器中,然后就报错,当时忘记记录报错信息了,百度了一下就是大概这样:fatal: Could not read from remote repository.,拉取失败了,然后又换ssh方式来还是一样。

解决:辗转十几个网站,终于在github官方文档中找到了(吸取教训,遇事先去官方文档找答案),大概是当前操作用户与github上储存的公钥不匹配,所以报错,然后看一些当前用户有没有公钥:

cat ~/.ssh/id_rsa.pub 然后发现是没有滴,然后就新生成一个公钥:ssh-keygen。然后将这个公钥里面的内容复制,再到github上面:点击右上角头像 –> settings –> SSH and GPG keys –> new SSH key –>key中粘贴publickey –> Add SSH key

然后就搞定了,继续下一步。

成功得到代码之后,将代码文件放到:/var/www/html目录下之后,修改/etc/apache2/sites-available/000-default.conf指向域名到项目根目录下,然后关闭内网访问限制:/etc/mysql/mysql.conf.dmysqld.cnf //#注释 bind-address = 127.0.0.1,然后就可以通过地址正常访问了。

问题三:网站能打开,但是无法连接数据库(已安装配置mysql)。

这个问题困扰了几天,当时在连接数据库的逻辑中使用try catch捕获错误信息,但是当时没有处理,报错信息也没有显示,然后就改了下代码使用echo getMessage()打印报错信息,就是数据库连接不上的问题。在一直想不到是为啥,当时使用navicat连不上,就想直接在服务器内进入mysql命令行创建数据库,导入sql文件。。。貌似也有问题,有两个数据库,只能访问一个,然后就打算放弃这招,就在我愁眉不展的时候,另一位大佬提醒了我一下:连不上,看下3306端口开了没,然后通过端口检测网站看下服务器已经开启的端口将网站部署到服务器过程中遇到的一些问题插图1

果然端口没开,开启端口只能在服务器后台开,在终端上开不了,然后就找大佬帮忙开一下端口,开了之后再navicat上连接将网站部署到服务器过程中遇到的一些问题插图2

然后就可以正常连接了。

到这儿之后感觉差不多了,但是有情下一个问题

问题三:加载缓慢

我知道的网站加载缓慢有几个大的原因,服务器带宽太小,网站资源过大,代码结构繁杂冗余。。。

我的访问慢主要是:

1. 图片网站,图片多。

2. 服务器带宽小(1M)。

3. 代码。。。。(可能)。

带宽肯定是不用想,毕竟是测试服务器,然后就疯狂压缩图片,当时是在ubuntu上安装的一个压缩png图片的软件optipng,有一次用力过猛直接糊的不像样子了。。还有图片压缩之前记得备份。又是一个教训。然后:将网站部署到服务器过程中遇到的一些问题插图3

还是挺慢的,这里还可以优化的一个点是在img标签内添加lazy属性,图片懒加载,不过作用应该也不会太明显。

最后一个点:一个复制链接的功能失效了,报错了,直接用了js的一个方法,这里应该是不兼容的问题,然后就换了个:创建一个文本框,然后再使用document.execCommand("copy",true);实现复制功能。

因为当时没有做好记录,没有养成这个习惯所以可能有一些遗漏的问题,后面遇到了再补充。现在要养成随手记录的习惯。

原文链接:https://blog.csdn.net/weixin_47622761/article/details/128750147

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享