前天申请了一个阿里云服务器,博主是新人,所以是Windows2012,感觉熟悉点,但是高了一下午还是没搞明白怎么使用,所以又换成了Linux系统的,发现也挺方便的,初始的配置网上有很多教程。
1、登录服务器之后,配置就是按照这个做的:
登录工具putty;
步骤 4:Linux 格式化和挂载数据盘_快速入门_云服务器 ECS-阿里云 :
https://help.aliyun.com/document_detail/25426.html?spm=5176.doc25423.6.592.0yjb8h
2、配置go环境:
博主是参考的这两个网址的:Linux 安装Go环境变量 - 黄步欢 - 博客园 http://www.cnblogs.com/rookie404/p/6358596.html
linux下怎么安装Go开发环境?linux部署golang_百度经验 https://jingyan.baidu.com/article/90895e0ffb4f1764ec6b0baa.html
3、因为博主是个小白,初次接触Linux系统,所以又现学习了Linux命令:
Linux常用命令大全 - Boblim - 博客园 http://www.cnblogs.com/fnlingnzb-learner/p/5831284.html
4、然后就是上传go项目和引入的第三方库了,用的是psftp:
cd /go/release
put F:\Project\go\src\release\farm.zip
put F:\Project\go\src\release\src.zip
unzip -o /go/release/farm.zip -d /go/src/farm/
unzip -o /go/release/src.zip -d /go/src/
cd /go/src/farm/
go build
nohup /go/src/farm/farm &> farm.log &
5、执行程序先用ps -aux | grep farm查一下是否已经在运行,有的话先kill pid,如kill 2547,如果不先停掉进程,会出现Address already in use这个错误。
6、开放端口,因为在选择服务时已经开放了80等常用的四个端口,但8000端口没开放,所以一直没法从外部访问;
1. 开放端口命令: /sbin/iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
2.保存:/etc/rc.d/init.d/iptables save
3.重启服务:/etc/init.d/iptables restart
4.查看端口是否开放:/sbin/iptables -L -n
执行了之后还是不行,后来问了下其他人,可能是安全组没配置:
5、安全组加入8000端口,success。
![阿里云服务器安全组位置.png](https://static.studygolang.com/170901/a9c36deebff16a61283db7538b8a73fb.png)
![安全组配置规则.png](https://static.studygolang.com/170901/1018e1327a704cee422b9d071efd1fad.png)
7、每次访问都带着端口号总感觉不太舒服,又找了些资料:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8000
service iptables save
实现的效果就是在访问80端口时定向到8000端口了。
花了一天时间终于初步搞定了,其他的防护,权限等还没接触,继续学习。
有疑问加站长微信联系(非本文作者)