大家好,又见面了,我是你们的朋友全栈君。
centos7.0 web服务器搭建
前言
按照先易后难排序,在vmware虚拟机环境 下模拟,统一防火墙为Firewall ,统一在xshell下操作终端实现搭建. (强烈建议新手 安装选择 带gui服务器 这样终端 操作可以复制,分析文件,熟系操作之后可以最小安装(如果没有桌面,用xshell连接操作终端比较方便),我就是进过这样的坑)
关于搭建分为三步 ,第一步 配置网络(非虚拟机真机情况下不清楚),第二步 安装mysql并且开放 端口远程连接,第三步 安装配置 jdk tomcat 开放端口
新手一枚 ,有甚错误还请多多交流(建议使用本文相同 工具)
工具
CentOS-7-x86_64-DVD-1804.iso
apache-tomcat-8.5.32.tar.gz
xshell 6 xftp 6
Navicat 11
资源链接
pan.baidu.com/s/1Npq8K7hcno1I6RPa3wNF6A
第一步 网络配置 工具获取
首先在终端操作,vmware 下网络没有配置,先配置网络
代码语言:javascript复制ip add
ens33 为要配置的以太网
代码语言:javascript复制cd /etc/sysconfig/network-scripts
代码语言:javascript复制ls
进入 该目录下修改 网络配置
代码语言:javascript复制vi ifcfg-ens33
vi 工具编辑 i 进入修改模式 按ESC : 输入wq 保存退出
代码语言:javascript复制shutdown -r now
重启 生效
代码语言:javascript复制ping www.baidu.com
测试网络 获得ip 地址
代码语言:javascript复制ip add
得到192.168.159.134/24
代码语言:javascript复制cd /etc/sysconfig/network-scripts
代码语言:javascript复制vi ifcfg-ens33
代码语言:javascript复制shutdown -r now
重启 安装 perl (可能包括了之后要用的 wget net 查询等依赖工具)
代码语言:javascript复制yum install perl*
第二步 mysql 安装配置
安装 完以上就可以用 xshell 连接 服务器终端操作(针对最小化安装)。
安装wget
代码语言:javascript复制yum install wget
MySQL 5.6
代码语言:javascript复制wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
MySQL5.7
代码语言:javascript复制wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
MySQL5.6
代码语言:javascript复制rpm -ivh mysql-community-release-el7-5.noarch.rpm
MySQL5.7
代码语言:javascript复制yum -y install mysql57-community-release-el7-10.noarch.rpm
代码语言:javascript复制yum -y update
有点久耐心等待 MySQL5.6
代码语言:javascript复制yum install mysql-server
MySQL5.7
代码语言:javascript复制yum -y install mysql-community-server
代码语言:javascript复制systemctl start mysqld
systemctl status mysqld
systemctl enable mysqld.service
代码语言:javascript复制mysql_secure_installation
第一次enter y 设置mysql 密码 接着一路选y
代码语言:javascript复制mysql -u root -p
登录mysql , 测试成功 输入 exit; 退出mysql
配置防火墙
代码语言:javascript复制firewall-cmd --permanent --zone=trusted --add-source=192.168.159.1/32
ip可以从 xshell 上 获取 记得加上(xshell 可以看到上次登录ip ) /32 windows下cmd 执行 ipconfig 也可以得到; (参考国外帖子,不懂,大概是设置你电脑 ip 可以进入防火墙,为了可以远程访问这个服务器) 这个 ip 一定要设对 ,后面测试才有用 。不然防火墙会拦截ip ,开启了3306 也没用。(我视频里没注意,结果测试只能用 ssh 连接 而不是 3306 ,不过连接功能也可以实现)
开放3306 端口
代码语言:javascript复制firewall-cmd --permanent --zone=trusted --add-port=3306/tcp
重载服务
代码语言:javascript复制firewall-cmd --reload
mysql 设置远程访问权限
代码语言:javascript复制mysql -u root -p
代码语言:javascript复制use mysql
代码语言:javascript复制grant all on *.* to 'root' @'%' identified by 'password';
代码语言:javascript复制flush privileges;
测试远程访问:
第三步 tomcat 环境安装配置
配置jdk(这里用 open jdk )
代码语言:javascript复制yum -y install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64
得到jdk的地址 记下之后配置用
代码语言:javascript复制sudo update-alternatives --config java
这里有一个坑 ,当然是我参考的 这里得到 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/bin/java
但是一定要去掉 /bin/java, 如果加上 tomcat启动不了,亲测。
代码语言:javascript复制vi /etc/environment
代码语言:javascript复制JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre"
输入并保存
代码语言:javascript复制vi ~/.bash_profile
代码语言:javascript复制export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre
export PATH=$JAVA_HOME/bin:$PATH
输入并保存
代码语言:javascript复制source ~/.bash_profile
使更改生效
代码语言:javascript复制echo $JAVA_HOME
检查成功
安装 配置 tomcat 创建tomcat 用户,用户组
代码语言:javascript复制groupadd tomcat
代码语言:javascript复制useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
用 xftp 上传文件 到 opt 当然上传的方式很多
代码语言:javascript复制cd / opt /
tar -xzvf apache-tomcat-8.5.32.tar.gz
如上opt 下系统生成了一个空的tomcat 文件夹,如果没有 mkdir tomcat 创建一个
代码语言:javascript复制mv apache-tomcat-8.5.32/* tomcat/
这句的命令就是把 解压出来的 apache-tomcat-8.5.32文件夹下的所有文件 移动到 tomcat 文件夹下去。
代码语言:javascript复制chown -hR tomcat: tomcat
chown -hR tomcat: tomcat tomcat
将tomcat文件夹 的 权限给 tomcat 用户 用户组
测试 tomcat 是否可用
代码语言:javascript复制/opt/tomcat/bin/startup.sh
可以浏览器 localhost:8080 (gui ) 或者 ip:8080 不好说清楚,你懂得。
测试成功 关闭tomcat
代码语言:javascript复制/opt/tomcat/bin/shutdown.sh
赋予权限
代码语言:javascript复制cd /opt/tomcat/bin/
chown -hR tomcat:tomcat /opt/tomcat/
代码语言:javascript复制vi catalina.sh
#setting tomcat pid
CATALINA_PID="$CATALINA_BASE/tomcat.pid" 注释后 加入并保存
代码语言:javascript复制cd /etc/systemd/system/
vi tomcat.service
按自己的情况修改
代码语言:javascript复制[Unit]
Description=Apache Tomcat 8 Servlet Container
After=syslog.target network.target
[Service]
User=tomcat
Group=tomcat
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre"
Environment=CATALINA_PID=/opt/tomcat/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
保存退出
将tomcat 加入系统自启动
代码语言:javascript复制systemctl daemon-reload
systemctl start tomcat
systemctl enable tomcat
查看8080 端口状况 ,tomcat服务 运行情况
代码语言:javascript复制netstat -plntu
systemctl status tomcat
修改一些文件
代码语言:javascript复制cd /opt/tomcat/conf/
vi tomcat-users.xml
倒数第二行加入
代码语言:javascript复制示例
<role rolename="manager-gui"/>
<user username="admin" password="password" roles="manager-gui,admin-gui"/>
我的
<role rolename="manager-gui"/>
<user username="admin" password="7436" roles="manager-gui,admin-gui"/>
这个是 tomcat 管理页面的账户设置 ,重要,建议用户名不要改 ,貌似用户名有限定。 wq保存退出
代码语言:javascript复制cd /opt/tomcat/webapps/manager/META-INF/
vi context.xml
注释19-20 行 如下 :
代码语言:javascript复制<Context antiResourceLocking="false" privileged="true" >
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.d .d .d |::1|0:0:0:0:0:0:0:1" /> -->
</Context>
保存退出
代码语言:javascript复制cd /opt/tomcat/webapps/host-manager/META-INF/
vi context.xml
注释如下 保存 退出
代码语言:javascript复制<Context antiResourceLocking="false" privileged="true" >
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.d .d .d |::1|0:0:0:0:0:0:0:1" /> -->
重启tomcat 配置防火墙
代码语言:javascript复制systemctl restart tomcat
systemctl start firewalld
systemctl enable firewalld
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --reload
firewall-cmd --list-ports
firewall-cmd --list-services
测试页面 如下 ok
心得体验
小谈一下,搭建服务器虽然没有太繁杂,但是也是花了几天,只要工作外有空闲就查资料。对于我这样的新手来说还是有挑战的。不过这其中参考的资料很多,centos 7 及之前的版本有很多不同, 7就是一个分界线,比如系统启动的不同。几乎用的 7以上系统 不用参考 以下的帖子。所以找来的资料各不相同,还有很多存在错误,jdk手动配置 source 不生效, mysql 安装 配置环境变量不成功,包括最后参考的这两篇国外的 ,也有像 pid 未写入等错误。不足,jdk未使用oracle jdk ,jdk,mysql 未做到离线安装,以后改进
视频地址:
http://v.youku.com/v_show/id_XMzcxMDgxMzE1Ng==.html
参考资料
https://blog.csdn.net/jasonhector/article/details/78657532 https://www.howtoforge.com/tutorial/how-to-install-tomcat-on-centos/ https://idroot.net/tutorials/how-to-install-mysql-server-on-centos-7/
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140108.html原文链接:https://javaforall.cn