Linux下部署web服务器

文章目录

  • Linux下部署web服务器
    • 1.购买服务器
    • 2.链接服务器
    • 3.搭建环境(web)
      • 3.1安装JDK
      • 3.2安装Apache Tomcat
      • 3.3安装MySQL
    • 4.总结

1.购买服务器

https://www.aliyun.com/activity/new?utm_content=se_1009243113
关于如何选购这样看大家的情况,一般企业使用的至少是2核8G、5M带宽以上,个人就随意了。

2.链接服务器

登录阿里云,选择云服务器ECS,找到你购买的服务器,重置密码
下载ssh,如果有请忽视
https://www.mls-software.com/files/setupssh-8.2p1-1.exe?spm=5176.13329450.0.0.4c434df5uslSOA&file=setupssh-8.2p1-1.exe

ssh root@[ipaddress]
您需要将其中的 ipaddress 替换为您的ECS服务器的公网IP地址。例如。
ssh root@123.123.123.123
然后输入你刚才重置的密码,这样就可以登录了,登录成功后会显示如下信息。

3.搭建环境(web)

根据你后台项目是什么语言的来选择给服务器配置环境。

这里我选择Java Web,以Jave Web为例,我安装Java开发环境并配置。

3.1安装JDK

通过yum命令查找JDK1.8软件包。
yum -y list java*
安装列表中的JDK1.8软件包。
yum -y install java-1.8.0-openjdk-devel.x86_64
查看JDK版本。
java -version
本示例中版本信息如下所示。
openjdk version “1.8.0_262”
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
配置环境变量,打开配置文件。
vim /etc/profile
在配置文件末尾,按i进入编辑模式,添加以下信息。
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-0.1.al7.x86_64
PATH=PATH:PATH:PATH:JAVA_HOME/bin
CLASSPATH=.:JAVAHOME/lib/dt.jar:JAVA_HOME/lib/dt.jar:JAVAH​OME/lib/dt.jar:JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH
说明 JAVA_HOME值为当前JDK安装的路径。本示例中,运行命令cd /usr/lib/jvm/进入jvm路径下,然后运行ls查看JDK安装后文件的路径。
按下Esc键,输入:wq并回车以保存并关闭文件。
立即生效环境变量。
source /etc/profile

3.2安装Apache Tomcat

先下载tomcat
wget https://mirrors.bfsu.edu.cn/apache/tomcat/tomcat-8/v8.5.66/bin/apache-tomcat-8.5.66.tar.gz
然后解压Tomcat 8安装包
tar -zxvf apache-tomcat-8.5.66.tar.gz
将文件的所属用户设置为www
chown -R www.www /usr/local/tomcat/
配置server.xml文件
运行以下命令切换到/usr/local/tomcat/conf/目录。
cd /usr/local/tomcat/conf/
运行以下命令重命名server.xml文件。
mv server.xml server.xml_bk
新建一个server.xml文件。
运行命令vi server.xml创建server.xml文件。
按下i键,添加以下内容。

<?xml version="1.0" encoding="UTF-8"?>
<Server port="8006" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<Listener className="org.apache.catalina.core.AprLifecycleListener"/>
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"type="org.apache.catalina.UserDatabase"description="User database that can be updated and saved"factory="org.apache.catalina.users.MemoryUserDatabaseFactory"pathname="conf/tomcat-users.xml"/>
</GlobalNamingResources>
<Service name="Catalina">
<Connector port="8080"protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"maxThreads="1000"minSpareThreads="20"acceptCount="1000"maxHttpHeaderSize="65536"debug="0"disableUploadTimeout="true"useBodyEncodingForURI="true"enableLookups="false"URIEncoding="UTF-8"/>
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/data/wwwroot/default" debug="0" reloadable="false" crossContext="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" />
</Host>
</Engine>
</Service>
</Server>

按esc键,输入:wq并回车以保存并关闭文件。
设置JVM内存参数。
运行vi /usr/local/tomcat/bin/setenv.sh命令创建/usr/local/tomcat/bin/setenv.sh文件。
按下i键,添加以下内容。
指定JAVA_OPTS参数,用于设置JVM的内存信息以及编码格式。
JAVA_OPTS=’-Djava.security.egd=file:/dev/./urandom -server -Xms256m -Xmx496m -Dfile.encoding=UTF-8’
按下esc键,输入:wq并回车以保存并关闭文件。

注意:网上介绍的appBase="/data/wwwroot/default",我将改为appBase="webapps" ,因为如果不修改的话,将web项目部署到Tomcat的webapps目录下,是无法访问到项目的,这个appBase就是将项目要放置的哪个文件夹下去访问,这个看个人爱好了。

wget https://raw.githubusercontent.com/oneinstack/oneinstack/master/init.d/Tomcat-init
mv Tomcat-init /etc/init.d/tomcat
chmod +x /etc/init.d/tomcat
sed -i 's@^export JAVA_HOME=.*@export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-1.e18_4.x86_64@' /etc/init.d/tomcat
注意 脚本中JDK的路径信息必须与您安装的JDK路径保持一致,否则Tomcat会启动失败。
可通过命令whereis java查看JDK路径和名称

运行以下命令设置Tomcat开机自启动。
chkconfig --add tomcat
chkconfig tomcat on
运行以下命令启动Tomcat。
service tomcat start

尝试使用chmod u+x *.sh再次启动,如果还是不行,使用这个命令启动
sudo ./startup.sh
当我们配置了Tomcat之后,这个时候已经可以访问8080了,地址是:您的公网IP地址加上8080,如:http://123.123.123.123:8080/,当出现Tomcat欢迎页或Tomcat test就表示已经部署成功了

3.3安装MySQL

如果我们在服务器部署的项目用到了mysql,那我们还需要部署mysql。
下载mysql
wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
安装mysql
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
查看是否安装成功
mysql -V
返回mysql版本号代表安装成功
启动mysql服务
systemctl start mysqldservice mysqld restart
设置开机启动(可选)
systemctl enable mysqld
systemctl daemon-reload
查看服务器运行状态
systemctl status mysqld
参考本地配置MySQL的方法,
我们服务器也需要配置mysql的mysql.ini,在linux中我们配置的名称叫my.cnf
编辑文件
vi /etc/my.cnf
编辑内容如下

[mysql]# 设置mysql客户端默认字符集
default-character-set=utf8[mysqld]#设置3306端口
port = 3306# 设置mysql的安装目录
basedir=/var/libsocket=/var/lib/mysql/mysql.sock# 设置mysql数据库的数据的存放目录
datadir=/var/lib/mysql# 允许最大连接数
max_connections=200# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

登录数据库
mysql -uroot -p
默认mysql是没有密码的,提示输入密码时直接回车即可,于是我们给mysql修改密码
修改密码
SET PASSWORD FOR root@localhost = '123456';
登录后我们可以创建数据库等使用了
退出登录
Exit

4.总结

最后说下自己的感悟,首先搭建服务器最好是在本地尝试了一遍,在本地搭建了环境,包括jdk、tomcat、mysql等,然后将你的web项目放置到tomcat的webapps目录下,通过http://localhost:8080/项目名/去访问,有人说太阳底下没有新鲜事,搭建本地环境不是什么难事,当你在本地已经搭建好环境了,那么在服务器上再搭建环境,做法也是很相似的了,这里我搭建的服务器系统是linux的centos,这可能需要你知道一些常用的linux命令,比如下载、解压等,我运行的项目是web项目,需要为服务器运行项目搭建的环境是JDK+Tomcat+MySQL,如果你的服务器运行项目是php,那你需要搭建的环境是LNMP或LAMP,这个都是大同小异了。其实搭建服务器只是基础,花点时间总能搭建好,重点还是要提高自己的编程技术,加油!

Linux从零搭建web服务器相关推荐

  1. Linux从零搭建Minecraft服务器

    本文来自我的个人博客,欢迎大家访问关注: MickeyMiao 搭建一个属于自己的minecraft服务器是我从初中开始就有的梦想,但奈何高考之前,我都没有被父母允许玩电脑,更别说有机会搭建minec ...

  2. 实例浅谈Linux环境下搭建Web服务器与创建个人主页

       版权声明:对于本博客所有原创文章,允许个人.教育和非商业目的使用,但务必保证文章的完整性且不作任何修改地以超链接形式注明原始作者.出处及本声明. 博客地址:http://blog.csdn.ne ...

  3. linux ftp web服务器搭建,Linux系统下搭建Web服务器和FTP服务器

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? Apache2和php组件的安装 使用如下命令来安装Apache2和php的组件 Ps:如果只安装Apache2,将会导 ...

  4. arm Linux 低成本方案,参赛作品《低成本基于ARM+Linux平台搭建web服务器的物联网学习板》...

    [报名阶段需要填写的内容] 1. 参赛者姓名(必填项): 王徕泽 2. 单位或学校名称(选填项): 徕泽电子工作室 3. 当前职务或职称(选填项): 室长 4. 参赛作品的名字(必填项): 低成本基于 ...

  5. Linux - nginx 搭建 Web服务器

    前言 在之前,已经对 nginx 有过基本的介绍. 现在尝试利用 nginx 来 搭建一个 web服务器. 正文 1.什么是 Web 服务器? Web服务器也称为WWW (WORLD WIDE WEB ...

  6. 使用Linux搭建web服务器

    对于一个网站开发者而言,在经历了艰难的开发过程后,要将网站推向给用户,必须要做的一步便是部署我们的web应用,这样广大的用户才能成功访问我们的网站.目前主流的部署平台都是基于Linux的.本文将详细讲 ...

  7. Linux搭建web服务器---静态网站

    搭建web服务器 三种实例: 1.多ip多网站搭建 2.多端口多网站搭建 3.多域名多网站搭建 实例1.多ip多网站搭建 前提配置: 添加多ip #nmcli connection modify en ...

  8. Linux之搭建web服务器

    文章目录 题目1 题目2 题目1 1.要求搭建web服务器通过端口8909能够访问到网页内容为"小胖,你咋这么胖呢!" [root@localhost html]# vim /et ...

  9. 吃透这套架构演化图,从零搭建Web网站也不难

    转载自 吃透这套架构演化图,从零搭建Web网站也不难 前言 工作也有几多年了,无论是身边遇到的还是耳间闻到的,多多少少也积攒了自己的一些经验和思考,当然,博主并没有太多接触高大上的分布式架构实践,相对 ...

  10. centos+7虚拟机web服务器,CentOS7上搭建WEB服务器

    mysql 安装 直接yum install mysql-server是不可以的 1 wget http://repo.mysql.com/mysql-community-release-el7-5. ...

最新文章

  1. 还在为入门深度学习发愁吗?其实你只需要一周的时间
  2. python logging
  3. 推荐系统个人理解(理论部分)
  4. js 监听页面url锚点变化 window.onpopstate
  5. pymysql的安装
  6. hdu4609 3idiots 三角形计数 FFT
  7. vue底部选择器_Vue组件-极简的地址选择器
  8. oracle中文字段名怎么查询_sql注入联合查询总结
  9. 4.设计模式---单例模式(上)
  10. textedit实时显示位置_加什么地形就看什么等高线!等高线实时预览就是这么爽...
  11. java解析tcp报文_JAVA语言TCP通信和JDBC示例(AIS信息解析)
  12. 我的第一个python web开发框架(23)——代码版本控制管理与接口文档
  13. 右侧交易稳健获利的指标
  14. 删除可视图中的类不能彻底避免它重新被编译
  15. box怎么用 latency_box-sizing使用场景
  16. python queue pip
  17. 通俗了解神经网络如何避免陷入局部最优
  18. 数据库锁表的分析与解决
  19. 小程序之模版消息通知
  20. 电学计算机专业英语,电器电子英语词汇(O)

热门文章

  1. 瑞幸的“快”与连咖啡的“慢”
  2. 【FPGA学习笔记】VHDL语言(五)语言风格描述:行为描述,数据流描述,结构化描述
  3. 【day02】选择题题解
  4. 我逢人就吹的超好用Markdown编辑器-Typora
  5. eclipse mars2 安装web插件
  6. 第15章卡方检验:拟合优度和独立性检验
  7. dockr pull 无法拉取镜像提示找不到注册表
  8. 解决Windows PowerShell 乱码
  9. android安全静态分析,[分享]发几个Android静态和动态分析的小技巧
  10. GMCM2017-前景目标提取