我是就读于华南农业大学19级软件工程专业的一名学生,目前大三,通过同学老师推荐了解到了“飞天加速计划·高校学生在家实践”活动,正适合我最近的Linux实验。
本次实验内容为实现用Java、PHP、Go、Nodejs等多种语言,实现从MySQL读取内容并显示在浏览器上的功能。
首先我先去领取了阿里云的学生用ECS服务器后使用Xshell连接并进行MySQL的安装(rpm安装)和配置启动、Nginx的安装(yum安装) 配置启动、Java的安装(官网下载后用Xftp上传)和配置、PHP的安装(wget+yum安装)配置启动、Golang的安装(yum安装)配置、Nodejs的安装(npm安装)配置等开发环境的搭建。
然后再于本地用idea编写基于springboot的java程序实现从MySQL读取内容并显示在浏览器上的功能,于本地测试后上传Linux(若本机和linux上数据库密码或其它配置属性不一样则需在application.properties中更改密码或其它配置属性),用nohup java -jar Linux_experiment.jar &使其在后台长期运行,再进行nginx配置,然后访问本机ip地址+index.java查看效果。确认无误后即可进行下一步。接下来的php、go、Nodejs程序的编写和java的差不多,不过应注意存放路径和启动命令的差别,还有一些细节上需要不同的处理。
其它几种语言的程序编写也是差不多的步骤,需要注意的几个问题是
(1) 本地和Linux上数据库配置的不同要记得更改(如密码、属性等);
(2) 更改nginx配置时端口号后要加"/";
(3) 使用go语言编写程序时若有用到外部下载的包应该先使用go mod init ‘文件路径’命令创建它的包依赖路径后再下载对应包;
(4) 用Nodejs编写的程序应使用forever start index.js命令使其可以在后台长期运行;
(5) 若出现端口被其它进程占用的情况应使用kill -9 pid命令解除其对该端口的占用。
这一周多来使用阿里云的ECS在Linux系统上配置环境及部署项目遇到了不少问题但也收获了很多,不过这也是每一个学习编程的人的必经之路吧。