纸上得来终觉浅,觉知此事要躬行。--朱熹
一、购买腾讯与主机(和域名)
自己在这个网站https://cloud.tencent.com/上面购买就可以了。备案认证之类的可能很烦(我是拿别人的直接用的)
可以在总览中查看:
点击主服务器:
二、登录云主机
1.直接使用网页登录
输入账号密码
然后就可以进入管理服务器
2.使用专用的软件登录SSH连接
推荐一款用于远程连接云主机的软件SecureCRT(相同功能的还可以下载Xshell、pytty等)
这样就成功创建连接了。
三、安装Java环境,配置JDK
先查看云库有什么版本的java
yum –y list java*
安装jdk1.8.0所有相关组件
yum -y install java-1.8.0-openjdk*
安装之后不需要配置,可以直接使用,这就是腾讯云给我们带来的好处!环境都帮你配置好了!
查看java版本
java -version
四、安装Tomcat服务器并启动
因为yum的安装方式不能安装到最新版本,所以自己去官网下载一个tomcat8版本的。
这里用到一个用于上传文件到服务器的工具:WinSCP
下载安装就可以使用的。(主机名字填写你申请到的云主机ip地址)
登录就可以把我们自己准备的tomcat上传上去了,操作很简单,直接拖拽就可以了。
配置Tomcat
这里我使用的是CentOS7 该系统默认使用firewall防火墙,想要换回iptable防火墙,可以关闭firewall并按照iptables.
1、关闭firewall:
systemctl stop firewalld.service 停止firewall
systemctl disable firewalld.service 禁止firewall开机启动
firewall-cmd --state 查看默认防火墙状态(关闭后显示not running,开启后显示running)
2.安装iptables-services
yum install iptables-services
3.修改防火墙配置文件
vi /etc/sysconfig/iptables
把下面这些内容写入iptables(开放需要的端口,把8080映射到80端口...)
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
注意:添加在端口22上面或者下面,不要放在最后,不然不起作用。
4.重启防火墙使配置生效
systemctl restart iptables.service重启防火墙使配置生效
systemctl enable iptables.service设置防火墙开机启动
启动tomcat
cd /apache-tomcat-8.5.23 进入apache-tomcat-8.5.23目录
cd bin/ 进入bin目录
./startup.sh 执行startup
出现最后一行出现Tomcat started.说明启动成功
这部分可以参考http://bbs.qcloud.com/thread-5469-1-1.html
五、测试
在公网输入IP就可以访问我们的服务器了,下面的tomcat服务器默认的页面。
六、安装mysql数据库,启动mysqld服务,配置防火墙开通3306端口
查看yum源是否有mysql,但是我也没有在centos7.0找到可以使用的mysql
yum list | grep mysql
为了解决这个问题,我们要先下载mysql的repo源。
1.下载mysql的repo源
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2.安装mysql-community-release-el7-5.noarch.rpm包
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
3.安装mysql
sudo yum install mysql-server
(此处省略好多安装步骤)
和其他安装一样,根据步骤安装就可以了,不过安装完成后,没有密码,需要重置密码。
重置密码前,首先要登录
mysql -u root
把/var/lib/mysql的拥有者改为当前用户:
sudo chown -R mysql:mysql /var/lib/mysql #这里的mysql是用户名(需要设置用户组合)
重启服务
service mysqld restart
登录后重置密码
mysql -u root
mysql > use mysql;
mysql > update user set password=password('xu827928') where user='root';
mysql > exit;
开放端口(省略) 修改权限可以使其他机器登录:
mysql>mysql -h localhost -u root //这样应该可以进入MySQL服务器
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //赋予任何主机访问数据的权限
mysql>FLUSH PRIVILEGES //修改生效
mysql>EXIT //退出MySQL服务器
使用时遇到的问题
问题的场景是:在命令行模式下用户名和密码都是正确的但是就是出现登陆不了授权失败的问题。
mysql> select user,password,host from mysql.user;
可以看出该表显示的倒数第二行为:
+--------+-------------------------------------------+--------------------+
| user | password | host |
+--------+-------------------------------------------+--------------------+
| root | | % |
可以看出在root用户下的任何主机是没有password的,因此可以采取两种方式,在远端使用的时候没有密码,显然是不安全的,然后就是为其在远端访问的时候设置密码。步骤如下:
mysql> grant all privileges on *.* to root@"%" identified by "your password";
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
这部分可以参考http://www.jb51.net/article/101778.htm
上面的步骤就可以个人建立自己的个人网站了。
我将会在下一篇文章中继续介绍关于基于CentOs7.0和JSP+Tomcat+mysql的微信公众平台的开发。