lamt

lamt搭建

环境说明

系统主机名ip安装的服务
centos7vm3192.168.30.150http
mysql
tomcat
1.安装apache
//安装所需包
[root@vm3 ~]# yum -y install openssl-devel pcre-devel expat-devel libtool wget gcc gcc-c++

//创建apache用户和组
[root@vm3 ~]# useradd -r -M -s /sbin/nologin apache
[root@vm3 ~]# id apache
uid=997(apache) gid=995(apache) groups=995(apache)
[root@vm3 ~]# 

//下载和安装apr以及apr-util
[root@vm3 ~]# wget http://mirror.bit.edu.cn/apache/apr/apr-1.7.0.tar.gz http://mirror.bit.edu.cn/apache/apr/apr-util-1.6.1.tar.gz
[root@vm3 ~]# tar xf apr-1.7.0.tar.gz 
[root@vm3 ~]# tar xf apr-util-1.6.1.tar.gz 
[root@vm3 ~]# ls
anaconda-ks.cfg   apr-util-1.6.1
apr-1.7.0         apr-util-1.6.1.tar.gz
apr-1.7.0.tar.gz
[root@vm3 ~]# cd apr-1.7.0
[root@vm3 apr-1.7.0]# ./configure --prefix=/usr/local/apr
[root@vm3 apr-1.7.0]# make && make install
---编译过程略

[root@vm3 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@vm3 apr-util-1.6.1]# make && make install
---编译过程略

//下载安装httpd
[root@vm3 ~]# wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.43.tar.gz
--2020-08-01 20:49:08--  http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.43.tar.gz
Resolving mirror.bit.edu.cn (mirror.bit.edu.cn)... 219.143.204.117, 202.204.80.77, 2001:da8:204:1205::22
Connecting to mirror.bit.edu.cn (mirror.bit.edu.cn)|219.143.204.117|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9348230 (8.9M) [application/octet-stream]
Saving to: ‘httpd-2.4.43.tar.gz’

100%[===========>] 9,348,230   2.72MB/s   in 3.4s   

2020-08-01 20:49:11 (2.64 MB/s) - ‘httpd-2.4.43.tar.gz’ saved [9348230/9348230]

[root@vm3 ~]# ls
anaconda-ks.cfg   apr-util-1.6.1
apr-1.7.0         apr-util-1.6.1.tar.gz
apr-1.7.0.tar.gz  httpd-2.4.43.tar.gz
[root@vm3 ~]# tar xf httpd-2.4.43.tar.gz 
[root@vm3 ~]# ls
anaconda-ks.cfg   apr-util-1.6.1.tar.gz
apr-1.7.0         httpd-2.4.43
apr-1.7.0.tar.gz  httpd-2.4.43.tar.gz
apr-util-1.6.1
[root@vm3 ~]# cd httpd-2.4.43
[root@vm3 httpd-2.4.43]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

[root@vm3 httpd-2.4.43]# make && make install
---编译过程略

//安装后配置
[root@vm3 ~]# echo 'export PATH=/usr/local/apache/bin:$PATH' > /etc/profile.d/httpd.sh
[root@vm3 ~]# . /etc/profile.d/httpd.sh
[root@vm3 ~]# ln -s /usr/local/apache/include/ /usr/include/httpd
[root@vm3 ~]# echo 'MANPATH /usr/local/apache/man' >> /etc/man_db.conf

[root@vm3 ~]# sed -i '/#ServerName/s/#//g' /etc/httpd24/httpd.conf 

//启动apache
[root@vm3 ~]# apachectl start
[root@vm3 ~]# ss -tanl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128     *:22                  *:*                  
LISTEN      0      100    127.0.0.1:25                  *:*                  
LISTEN      0      128    :::80                 :::*                  
LISTEN      0      128    :::22                 :::*                  
LISTEN      0      100       ::1:25                 :::*                  

2.安装mysql
//安装依赖包
[root@vm3 ~]# yum -y install libaio ncurses-devel openssl-devel openssl cmake mariadb-devel

//创建用户和组
[root@vm3 ~]# groupadd -r -g 306 mysql
[root@vm3 ~]#  useradd -r -M -s /sbin/nologin -g 306 -u 306 mysql

//下载mysql软件包
[root@vm3 ~]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
[root@vm3 ~]# tar xf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
[root@vm3 ~]# cd /usr/local/
[root@vm3 local]# ls
apache    lib
apr       lib64
apr-util  libexec
bin       mysql-5.7.30-linux-glibc2.12-x86_64
etc       sbin
games     share
include   src
[root@vm3 ~]# cd /usr/local/
[root@vm3 local]# ls
apache    lib
apr       lib64
apr-util  libexec
bin       mysql-5.7.30-linux-glibc2.12-x86_64
etc       sbin
games     share
include   src
[root@vm3 local]# 
[root@vm3 local]# ln -sv mysql-5.7.30-linux-glibc2.12-x86_64/ mysql
‘mysql’ -> ‘mysql-5.7.30-linux-glibc2.12-x86_64/’

//修改目录/usr/local/mysql的属主属组
[root@vm3 local]# chown -R mysql.mysql /usr/local/mysql
[root@vm3 local]#  ll -d /usr/local/mysql 
lrwxrwxrwx. 1 mysql mysql 36 Aug  1 21:20 /usr/local/mysql -> mysql-5.7.30-linux-glibc2.12-x86_64/

//添加环境变量
[root@vm3 ~]# echo 'export PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@vm3 ~]#  . /etc/profile.d/mysql.sh
[root@vm3 ~]#  echo $PATH
/usr/local/mysql/bin:/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

//建立数据存放目录
[root@vm3 ~]# mkdir /opt/data
[root@vm3 ~]# chown -R mysql.mysql /opt/data/
[root@vm3 ~]# ll /opt/
total 0
drwxr-xr-x. 2 mysql mysql 6 Aug  1 21:23 data

//初始化数据库
[root@vm3 ~]#  /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/opt/data/
2020-08-02T01:24:59.768198Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2020-08-02T01:25:00.005443Z 0 [Warning] InnoDB: New log files created, LSN=45790
2020-08-02T01:25:00.044328Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2020-08-02T01:25:00.101316Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: fb93f2ce-d45e-11ea-9a20-000c29a61cb5.
2020-08-02T01:25:00.103220Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2020-08-02T01:25:01.150652Z 0 [Warning] CA certificate ca.pem is self signed.
2020-08-02T01:25:01.320790Z 1 [Warning] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.

//配置mysql
[root@vm3 ~]#  ln -sv /usr/local/mysql/include/ /usr/local/include/mysql
‘/usr/local/include/mysql’ -> ‘/usr/local/mysql/include/’
[root@vm3 ~]#  echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
[root@vm3 ~]# ldconfig 


//生成配置文件
[root@vm3 ~]# cat > /etc/my.cnf <<EOF[mysqld]
basedir = /usr/local/mysql
datadir = /opt/data
socket = /tmp/mysql.sock
port = 3306
pid-file = /opt/data/mysql.pid
user = mysql
skip-name-resolve
EOF         

//配置服务启动脚本
[root@vm3 ~]# cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@vm3 ~]# sed -ri 's#^(basedir=).*#\1/usr/local/mysql#g' /etc/init.d/mysqld
[root@vm3 ~]# sed -ri 's#^(datadir=).*#\1/opt/data#g' /etc/init.d/mysqld
[root@vm3 ~]# chkconfig --add mysqld
[root@vm3 ~]#  chkconfig --list

Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.

mysqld         	0:off	1:off	2:on	3:on	4:on5:on	6:off
netconsole     	0:off	1:off	2:off	3:off	4:of5:off	6:off
network        	0:off	1:off	2:on	3:on	4:on5:on	6:off

//启动mysql
[root@vm3 ~]# service mysqld start
Starting MySQL.Logging to '/opt/data/vm3.err'.
 SUCCESS! 
[root@vm3 ~]# ss -tanl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128     *:22                  *:*                  
LISTEN      0      100    127.0.0.1:25                  *:*                  
LISTEN      0      80     :::3306               :::*                  
LISTEN      0      128    :::80                 :::*                  
LISTEN      0      128    :::22                 :::*                  
LISTEN      0      100       ::1:25                 :::*     

//修改密码
[root@vm3 ~]# mysql

mysql> set password=password('123456');
Query OK, 0 rows affected, 1 warning (0.04 sec)

mysql> quit
Bye

3.安装tomcat
//安装JDK
[root@vm3 ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
//安装tomcat
[root@vm3 ~]# wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.37/bin/apache-tomcat-9.0.37.tar.gz

[root@vm3 ~]# ls
anaconda-ks.cfg
apache-tomcat-9.0.37.tar.gz
apr-1.7.0
apr-1.7.0.tar.gz
apr-util-1.6.1
apr-util-1.6.1.tar.gz
httpd-2.4.43
httpd-2.4.43.tar.gz
mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
[root@vm3 ~]# tar xf apache-tomcat-9.0.37.tar.gz -C /usr/local/
[root@vm3 ~]# cd /usr/local/
[root@vm3 local]# ln -s apache-tomcat-9.0.37/ tomcat

//启动tomcat
[root@vm3 ~]# /usr/local/tomcat/bin/catalina.sh startUsing CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

[root@vm3 ~]# ss -tanl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128     *:22                  *:*                  
LISTEN      0      100    127.0.0.1:25                  *:*                  
LISTEN      0      1        ::ffff:127.0.0.1:8005               :::*                  
LISTEN      0      80     :::3306               :::*                  
LISTEN      0      100    :::8080               :::*                  
LISTEN      0      128    :::80                 :::*                  
LISTEN      0      128    :::22                 :::*                  
LISTEN      0      100       ::1:25                 :::*                  

测试静态页面
在这里插入图片描述
测试tomcat页面
在这里插入图片描述

4.编辑httpd的配置文件,在/etc/httpd/conf.d中定义一个虚拟主机

httpd的代理模块:

proxy_module:反代模块
prproxy_ajp_module:适配ajp协议客户端proxy_http_module:适配http协议客户端;

这里我们用apache访问 使用proxy_module和proxy_http_module模块反代

//启用模块
[root@vm3 ~]# vim /etc/httpd24/httpd.conf 
#LoadModule remoteip_module modules/mod_remoteip.so
LoadModule proxy_module modules/mod_proxy.so       取消注释
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so     取消注释
#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

//配置虚拟主机
[root@vm3 ~]# vim /etc/httpd24/httpd.conf 
<VirtualHost *:80>
    ServerName www.yanlei.com
    ProxyRequests Off
    ProxyVia On
    ProxyPreserveHost On
<Proxy *>
    Require all granted
</Proxy>
    ProxyPass / http://192.168.30.150:8080/
    proxyPassReverse / http://192.168.30.150:8080/
<Location />
    Require all granted
</Location>
</VirtualHost>



测试
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值