前言
一、连接远程服务器主机
1.1、SecureCRT连接远程桌面
1.1.1、下载并使用SecureCRT8.5
1.1.2、SecureCRT反空闲
1.1.3、忘记连接远程主机的root用户密码
1.1.4、连接失败解决方案
1.2、SecureFX管理远程主机文件
1.2.1、浅谈CentOS目录结构
二、在远程服务器主机配置开发环境
2.1、Java环境的配置
2.2、Php环境的安装配置
2.3、Tomcat的安装配置
2.3.1、访问远程主机的Tomcat
2.4、MySQL的安装配置
2.4.1、CentOS7.3中MySQL5.7设置utf8编码格式步骤
2.4.2、导入sql文件到MySQL数据库
2.4.3、设置阿里云安全组
2.4.4、设置服务器的MySQL数据库可远程连接
三、在远程服务器主机上安装配置web服务器
3.1、Apache的安装配置
3.1.1、防火墙设置
3.2、Nginx的安装配置
3.2.1、配置nginx反向代理8080端口(java项目)到80端口
3.2.2、配置nginx反向代理2333端口(php项目)到80端口
四、将Web项目部署到远程服务器主机中
4.1、部署java web项目
4.1.1、MyEclipse将项目导出.war报错
4.1.2、java web项目访问
4.2、部署php web项目
4.2.1、php web项目访问
五、其他配置
5.1、绑定域名
第一个压缩包文件是注册机,第二个文件是安装文件,双击安装好SecureCRT之后(傻瓜式安装,点下一步下一步就好了)先不要启动SecureCRT,然后解压注册机压缩包,内容如下:
只需将keygen.exe文件复制到刚才安装好的SecureCRT_v8.5文件目录下(路径正常来说都是一样的),如下图所示:
以管理员的方式运行keygen.exe文件,界面如下:
刚启动的时候License(许可信息)框中是没有任何内容的,如果Name和Company输入框中没有内容需要自行输入(有内容的话默认就好了)。
第一步:点击patch按钮,选择SecureCRT的启动文件,即SecureCRT.exe。
第二步:单击Generate按钮,此时不出意外的话会生成类似的许可信息。生成许可信息后就可以启动SecureCRT了。刚启动时,未注册用户会提示先注册的弹窗,单击第二个按钮Enter License Data进入注册页面。
第三步:将许可信息输入对应的文本框中即可,记得,一定要一一对应。正常情况下输完许可信息就可以激活使用了。
如果报错可自行排查,或评论提问。
一切OK之后应该是可以看到以下界面了:
主机名填入下面介绍的控制台实例界面的IP地址栏的公网IP,如下图圈中所示:
设置步骤如下所示:
用户名一栏阿里云已经有个默认的root用户,直接输入root就好了,当然你也可以自己创建用户,使用过Linux系统的童鞋应该不陌生。
选中反空闲中的两个复选框,在发送字符串中输入你想发送的字符串,我输入的是一个空格字符,秒数什么的默认的就行了,然后确定,这样,只要你的本地电脑还连着网,且没有休眠连接就不会断开。
进入控制台的实例,点击更多选择重置密码,重置之后重启服务,这个密码就是连接远程主机root用户的密码了。 万事俱备之后终于可以进入远程主机了,当当当当:
欢迎来到CentOS系统的操作界面,是的,你没看错,这就是操作界面,是不是心里有一万头草泥马跑过,觉得操作界面怎么也得和Windows差不多吧,再不济也得像这个样子吧:
其实,刚接触Linux的小伙伴们有这个疑问很正常,我之前没接触Linux的时候也以为他的界面和Windows差不多,等真正接触了之后才知道原来操作系统还有无图形操作界面的,那好吧,那我就自己撸一个图形操作界面出来,类似上图所示,但是,我忘记了我买的服务器配置感人,根本带不动好吗!遂放弃(喜欢折腾的小伙伴可自行百度Linux系统如何安装图形操作界面)。其实无图形操作界面用得多了就习惯了,大家也不用太在意,那么继续。
Xshell:
这是因为云服务器未开启可用第三方软件连接远程终端(网关出入规则),那么怎么解决呢,首先,进入阿里云控制台,然后按照下图步骤操作:
不出意外的话可以进入到如下界面:
点击上图圈中的按钮,进入如下界面,输入内容如下图所示:
然后保存即可,这时再回到连接远程主机的第三方软件就可以正常连接了,如果还是不行就重启一下实例。
安装破解步骤和SecureCRT是一样一样的,所以也就不细说了,而且文件夹中包含了注册机使用说明。一切OK之后可以看到此界面:
是不是有似曾相识的感觉,没错,按照SecureCRT的连接方式登录就OK了。登录之后:
解释一下,左边是文件目录是你自己本地的,而右边的就是远程主机的目录文件,其实你的很多配置部署都是可以用SecureFX操作的,不需要在Linux的终端上在写指令操作了,但身为程序员,还是得了解一下这些指令。
用户类目录:
/root 系统管理员目录
/home 主要存放个人数据
应用程序类目录:
/lib 该目录用来存放系统动态链接共享库,几乎所有的应用程序都会用到该目录下的共享库
/tmp 临时目录,有些linux会定期清理
/usr 存放一些不适合放在/bin 或 /etc 目录下的额外工具,如个人安装的程序或工具
/usr/local 主要存放那些手动安装的软件,
/usr/bin 用于存放程序
/usr/share 用于存放一些共享数据
/usr/lib 存放一些不能不能直接运行,但却是许多程序运行所必需的一些函数库文件
/opt 主要存放可选程序,直接删除程序不影响系统其设置。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面
信息类目录:
/lost+found 在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。但当突然停电、或者非正常关机后,有些文件就临时存放在这里。
/proc 操作系统运行时,进程信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里
其他重要目录:
/etc/rc.d 放置开机和关机的脚本。
/etc/rc.d/init.d 放置启动脚本
/etc/xinetd.d 配置xinetd.conf可以配置启动其他额外服务。
/usr/include 一些distribution套件的头文件放置目录,安装程序时可能会用到。
/usr/lib 套件的程序库
/usr/local 默认的软件安装目录。
/usr/share/doc 系统说明文件的放置目录
/usr/share/man 程序说明文件放置目录
/usr/src 内核源代码目录
/usr/X11R6 X的存放目录
cd /usr/java
输入指令,解压jdk:
sudo tar zxvf jdk-7u79-linux-x64.tar.gz
如果出现很长一串就是解压成功了,不确定的话可以回到SecureFX下查看一下。
tips:zxvf后面的jdk版本名称是输入自己的jdk名称的而不是我贴出来的。
解压好之后,就要开始部署环境了,在Windows上部署想必大家都轻车熟路了,在Linux上部署的方法如下:
输入指令:
vi ~/.bashrc
;在末尾位置添加配置(使用方向键移动最下面),按i键进入编辑模式,输入配置:
export JAVA_HOME=/usr/java/jdk1.7.0_79(jdk路径)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
如下图所示:
然后按下ESC键退出编辑模式,再输入:
:wq
再按回车 这句指令的意思是保存并退出vi 模式
输入reboot指令重启系统,可能会断开连接,需要自己再手动连接
。。。。。。。
重启连接好后,切换到root用户(如果不是root用户的情况下),
输入指令
su
再按回车,然后输入root用户密码,切换好用户后,
输入指令:
java -version
如果显示如下信息:
欧了,jdk安装成功,如果失败,自行排查原因或者提问。
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安装好后可以通过如下命令查看是否安装成功:
yum info epel-release
yum repolist
接着就可以安装PHP及插件了,输入如下这一大段指令:
yum install -y php71w-fpm php71w-opcache php71w-cli php71w-gd php71w-imap php71w-mysqlnd php71w-mbstring php71w-mcrypt php71w-pdo php71w-pecl-apcu php71w-pecl-mongodb php71w-pecl-redis php71w-pgsql php71w-xml php71w-xmlrpc php71w-devel mod_php71w
最后查看是否安装成功:
php -version / php -v
至此,PHP环境就算配置完成了。
cd /usr/java
解压Tomcat安装包:
sudo tar zxfv apache-tomcat-8.5.29.tar.gz
换个名字:
sudo mv apache-tomcat-8.5.29 tomcat8.5.29
进入tomcat文件:
cd /usr/java/tomcat8.5.29
加环境变量:
sudo vi /etc/profile
也是光标移动到最下面,输入i 进入编辑模式,加入:
CATALINA_HOME=/usr/java/tomcat8.5.29
export CATALINA_HOME
如下图:
按下ESC键,再输入:
:wq
保存并退出编辑模式,然后再进入tomcat的bin目录:
cd /usr/tomcat8.5.29/bin
输入指令修改catalina.sh文件的配置信息:
sudo vi catalina.sh
光标往下移动,找到:
# OS specific support. $var _must_ be set to either true or false.
进入编辑模式,在这行下面再定义一次CATALINAHOME以及JAVAHOME:
CATALINA_HOME=/usr/tomcat8.5.29
JAVA_HOME=/usr/java/jdk1.7.0_79
如下图所示:
保存并退出。在tomcat的bin目录下输入指令:
sudo ./startup.sh
启动tomcat
显示上图信息则表示Tomcat启动成功。。。。。。如果启动失败,可以先自行排查,也可以问我(技术有限),也可以问问度娘。
tomcat路径/bin/./startup.sh
注意./startup.sh前面的路径是你tomcat存放的路径,然后在自己的本地电脑上打开任意一个浏览器,输入公网IP地址
到这里是不是觉得这个界面美得不行。
rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
查看下载好的源文件:
yum repolist enabled | grep mysql
第二步:安装mysql:
yum install mysql-community-server
第三步:启动mysql服务:
systemctl start mysqld
第四步:查看mysql密码,并进入mysql进行修改
简单说一下为什么有这一步,之前鄙人安装过mysql5.6版的,此版本是可以通过某些便捷的方法修改mysql的密码,但mysql5.7.26版貌似没有此便捷方式,只能先查出默认密码,再进入mysql中修改,方法如下:
查看mysql默认密码
grep 'temporary password' /var/log/mysqld.log
进入mysql
mysql -u root -p
按下回车键,输入密码,进入mysql(建议复制粘贴,Linux复制粘贴的快捷键为:复制:Ctrl+ins;粘贴:Shift+ins)
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
tips:mysql5.7.26版需要密码复杂度较高,最好既有大写又有小写还要有数字或特殊字符如:newPass6!
最后,测试新密码是否能进入mysql,如能显示以下界面那么就OK了:
tips:进入mysql后的任何指令结尾都要带上 ;(英文分号),不然会报错。
MySQL数据库原本的编码格式为Latin1,所以还要更改其编码格式。
输入指令:
show variables like 'char%';
需要将圈中的字符编码改为utf8
2、开始修改,首先退出mysql,直接输入exit;或者quit;,然后回车就行了。
输入指令进入my.cnf文件:
sudo vi /etc/my.cnf
光标下移,找到下图的位置,进入编辑模式输入如下代码,如下图所示:
character-set-server=utf8
按下ESC键,输入 :wq 保存后退出,然后,重启服务:
sudo systemctl restart mysqld
就OK了,这时你再进入mysql,输入指令:
show variables like 'char%';
bingo,完美。这时你就会发现原来编码为latin1的两个位置都变成utf8了,当然,binary就不用去管了。编码改好之后,继续进行咱们同步mysql配置的操作。
进入mysql,首先创建同名数据库:
CREATE DATABASE 数据库名 CHARACTER SET utf8 COLLATE utf8_general_ci;
然后使用这个数据库:
use 数据库名
再导入上传的数据库:
source /usr/java/project/数据库名.sql
如果显示一堆的Query OK,xxxxxxxxx,那么则表示导入成功,接下来列出此数据库中所有的数据表:
show tables;
查询某个表中的数据:
select * from 表名
然后输入exit或quit退出mysql命令行。接下是万事俱备只剩上传项目到服务器了,上传之前先试试咱们的Tomcat能不能启动。
选择配置规则,进入如下界面
添加上图圈出的三个入方向,可通过右上角的添加安全组规则按钮或添加快速创建规则按钮添加,通过快速创建规则按钮添加会出现如下界面:
首先,创建80/80端口和8080/8080时都选择HTTP(80),然后在自定义端口位置输入80/80端口或8080/8080(分开创建),创建3306/3306时选择MySQL(3306),下同,最后授权对象三个都设置成0.0.0.0/0,再确定,就OK了,此时就多了三个入方向的规则了,这时,咱们就可以访问远程主机的Tomcat了。
yum -y install httpd
查看httpd版本号:
httpd -v
查看httpd状态:
service httpd status
开机自启/不自启:
systemctl disable/enable httpd.service
启动/停止httpd:
systemctl start/stop httpd.service
查看httpd已安装文件:
rpm -qa | grep httpd
删除httpd:
rpm -e httpd
rpm -e gnome-user-share
rpm -e httpd --nodeps
rpm -e httpd-tools
安装好Apache(httpd)之后,需要修改一些配置文件,文件是:/etc/httpd/conf/httpd.conf
鄙人建议现将此文件传输到本地备份后在进行修改,如果嫌麻烦可直接修改,修改指令是:
vim /etc/httpd/conf/httpd.conf
修改的数据如下:
1、Apache(httpd)根目录设置:
2、监听端口修改(可使用自己喜欢的端口号)
3、主机名修改:
4、文档根目录修改,查看文档根目录是否在 /var/www下,这是默认根目录
6、设置解析PHP代码(不设置的话会直接输出PHP代码):
然后再修改云服务器的防火墙,CentOS7使用的是firewalld防火墙,修改指令如下:
永久添加白名单: firewall-cmd --zone=public --add-port=端口号/tcp --permanent
永久删除白名单: firewall-cmd --zone=public --remove-port=端口号/tcp --permanent
查看是否有此白名单: firewall-cmd --zone=public --query-port=端口号/tcp
重启防火墙: firewall-cmd --reload
开启/关闭firewalld防火墙: systemctl start/stop firewalld
开机自启/不自启: systemctl disable/enable firewalld
查看状态: systemctl status firewalld
例如,我的端口号是2333,所以我使用指令:firewall-cmd --zone=public --add-port=2333/tcp --permanent
就可以永久添加此端口的白名单了。
查询结果:
至此,Apache的配置算是告一段落了。
言归正传
第一步:创建下载目录,下载Nginx。想下载其他版本的话可上 Nginx官网 查看,我的下载目录是在/usr/package下
首先进入下载目录下,然后运行下载Nginx指令:
wget http://nginx.org/download/nginx-1.7.4.tar.gz
第二步:解压Nginx文件
下载完成之后会有一个nginx-1.7.4.tar.gz的文件,运行如下指令解压:
tar -zxvf nginx-1.7.4.tar.gz
之后便会得到一个nginx-1.7.4的文件
第三步:安装nginx
首先先运行两段指令
yum install gcc gcc-c++ openssl_devel -y^C
yum -y install pcre-devel openssl openssl-devel
安装pcre-devel与openssl-devel解决问题
不然解析安装的时候可能会报错:
./configure: error: the HTTP rewrite module requires the PCRE library.
运行完这两段代码之后就可以解析安装nginx了,首先进入nginx下载目录路径
./configure --prefix=/usr/local/nginx
tips:/usr/local/nginx是指安装路径,自定义即可,然后再运行两段指令
make
make install
不出意外的话基本就是安装OK了,如果有错先尽量自行排查,然后实在不行的话可评论提问。
第四步:安装完成之后,进入到nginx的sbin目录下,运行如下指令启动nginx
./nginx
nginx部分指令:
whereis nginx 查看nginx的安装目录
ps aux | grep nginx 查看nginx进程
nginx的sbin目录 ./nginx -s reload 重启nginx
nginx的sbin目录 ./nginx -s quit 结束nginx进程
/usr/local/nginx/conf
tips:建议各位小伙伴使用远程桌面文件操作工具(SecureFX、WinSCP、xftp)将此文件拉到本地复制一份备用,再修改,然后再上传覆盖。
文件如下:
需要修改的内容:
修改完之后记得保存并上传文件到nginx的conf目录下进行覆盖,如果不想这么麻烦的小伙伴可运行如下代码在终端上修改配置信息:
sudo vi /usr/local/nginx/conf/nginx.conf
配置完之后重启nginx,进入nginx的sbin目录:/usr/local/nginx/sbin,然后输入下面指令:
./nginx -s reload
最后访问地址输入 ip/项目名 是否能直接访问项目
欧了,至此就配置好nginx的8080端口(java项目)反向代理了。
也是建议先复制一份原文件,然后进入文件/usr/local/nginx/conf,找到对应位置,将其中的内容修改成和上图一样就行了。
配置完之后重启nginx,进入nginx的sbin目录:/usr/local/nginx/sbin,然后输入下面指令:
./nginx -s reload
最后访问地址输入 ip/项目名 是否能直接访问项目
欧了,至此就配置好nginx的2333端口(php项目)反向代理了。
我们只要把这些配置到远程主机的tomcat中就OK了,怎么配置呢,打开myeclipse,右键项目,单击export导出项目,出现以下界面:
选择上图圈出的导出格式,然后单击next进入如下界面:
点击Browse选择打包文件的存放地址,我选择的是桌面:
其他默认,点击保存:
然后选择Finish,等待打包结束
。。。。。。。。。
最后,打包成功之后在桌面可以看到这个文件:
右下角的红色框中不再显示加载任何东西,那么就是完全启动,完全启动之后什么都别做,直接关掉myeclipse,然后把刚才后缀.txt改回原来的.jar,再重新启动myeclipse。这时,你就可以导出war格式的Java web项目了,导出之后的war包是这个样子:
使用SecureFX上传到远程主机的tomcat的webapps文件夹下,不用解压,tomcat在运行时会自动解压:
先关闭tomcat:
./shutdown.sh
再开启tomcat:
./startup.sh
打开任意浏览器,公网IP:端口号/项目地址:
OK,非常完美!成功访问,以上就是我的一些上传Java web项目到阿里云服务器的一些心得的一些值得注意的地方,如果有说得不对的地方和不足之处希望各位小伙伴能指出。
重启httpd:
systemctl restart httpd.service
在/var/www/html目录下新建一个index.php文件,写入代码:
保存后,浏览器输入地址:IP地址:端口号
至此,PHP的环境算是配置成功了。
查看备案信息
选择公共查询
能查到备案信息就是OK的。
博主购买的是腾讯的域名,所以,绑定的方式如下:
1、登录腾讯云的控制台,再选择域名管理:
3、添加方式有两种,第一种,单击添加记录按钮,按步骤操作:
第一步:点击添加记录按钮;第二步需要选择解析的类型,一般是www;第三步:填入自己云服务器的外网ip地址;第四步:保存
第二种,点击快速添加网站/邮箱解析按钮:
选择网站解析:
输入主机ip,再点击确定按钮即可:
最后,测试是否成功绑定域名:
java项目:域名/项目名
php项目:域名/项目名
html项目:域名/项目名
至此,域名绑定算是成功了!
以上内容就是我对使用阿里云服务器CentOS7的一些心得,如果有说得不对的地方和不足之处希望各位小伙伴能指出。码字不易,望各位需要转载的小伙伴能注明出处!