企业平台架构LAMP——源码编译安装部署LAMP平台 实操

LAMP介绍

■什么是LAMP

目前最为成熟的—种企业网站应用模式,可提供动态Web站点应用及开发环境

构成组件
Linux、 Apache、 MySQL、 PHP/Perl/Python

LAMP的优势
成本低廉

可定制、易于开发

方便易用、安全和稳定

◆编译安装HTTP服务:前一章有命令注释。不懂可翻看

####编译安装HTTP服务####
#####安装Apache所需软件#####
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
httpd-2.4.29.tar.gz
####将上面3个包传到opt目录下####

[root@localhost ~]# cd /opt

#最小安装需要先 yum -y install bzip2
[root@localhost opt]# tar xf apr-1.6.2.tar.gz
[root@localhost opt]# tar xf apr-util-1.6.0.tar.gz
[root@localhost opt]# tar xf httpd-2.4.29.tar.bz2


[root@localhost opt]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util 

##################安装环境#######
[root@localhost opt]# 
yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

[root@localhost opt]# cd /opt/httpd-2.4.29/

./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi

###编译及安装### 
make && make install

####优化执行路径####
ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/
httpd -v      ###查看下HTTP版本
###建立[service].service 配置文件添加系统给服务####/lib/systemd/system/目录下,建立一个以.service 结尾的单元(unit)配置文件,
用于控制由 systemd 管理或监控的 httpd 服务

[root@localhost ~]# cd /lib/systemd/system/
[root@localhost system]# vim httpd.service

[Unit]
Description=The Apache HTTP Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart= /usr/local/bin/apachectl $OPTIONS
ExecrReload= /bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

[root@localhost system]# systemctl start httpd.service
[root@localhost system]# systemctl enable httpd.service         ###开机自启http
[root@localhost system]# systemctl is-enabled httpd.service   ###检查HTTP单元是否启动


####httpd.conf修改配置文件####################################
vi /usr/local/httpd/conf/httpd.conf
ServerName www.51xit.top:80  ###更改下


systemctl restart httpd####重启httpd服务

###用系统的浏览器验证###
# yum search netstat  查询软件包 关键词
#yum -y install net-tools   
#最小安装需要使用上面两条

netstat -anpt | grep 80
验证成功
(注意,网页默认显示内容为:/usr/local/httpd/htdocs/index.html)
你可以 vi /usr/local/httpd/htdocs/index.html    进入里面改标题语

◆编译安装MYSQL

#########安装mysql环境######
yum -y install \
ncurses \
ncurses-devel \
bison \
cmake

useradd -s /sbin/nologin  mysql

###上传mysql-boost-5.7.20.tar.gz到opt目录下###
cd /opt
tar xf mysql-boost-5.7.20.tar.gz
cd /opt/mysql-5.7.20/

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1

####配置选项含义###
1、DCMAKE_INSTALL_PREFIX:指定将 mysql 数据库程序安装到某目录下,
如目录/usr/local/ mysql。
2、DSYSCONFDIR:指定初始化参数文件目录
3、DDEFAULT_CHARSET:指定默认使用的字符集编码,如 utf8。
4、DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci
是适用于 UTF-8 字符集的通用规则。
5、DWITH_EXTRA_CHARSETS:指定额外支持的其他字符集编码。

######编译安装####
make && make install

#####数据库目录进行权限调整###
chown -R mysql:mysql /usr/local/mysql/

#####建立调整配置文件########
vi /etc/my.cnf
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_
ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

chown mysql:mysql /etc/my.cnf

#######设置环境变量####

echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
echo 'export PATH' >> /etc/profile
source /etc/profile


###去/usr/bin/mysql/下面去初始化,是把mysql/bin全部初始化
cd /usr/local/mysql/
bin/mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

#####下面这条命令必须在cd /usr/local/mysql/下执行
[root@localhost mysql]# cp usr/lib/systemd/system/mysqld.service 
/usr/lib/systemd/system/
systemctl enable mysqld
systemctl start mysqld
systemctl status mysqld

netstat -anpt | grep 3306

#开始没密码是空的直接回车,然后输入密码
mysqladmin -u root -p password 

 ##这个命令敲下,提示要输入密码,这个就是刚才设置的密码
mysql -u root -p    


◆安装PHP

####################安装PHP环境#####
yum -y install \
libjpeg \
libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 \
libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel


#######上传php-7.1.10.tar.bz2包到opt目录下#####
cd /opt
tar xjvf php-7.1.10.tar.bz2
cd php-7.1.10
./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip

make && make install

cp php.ini-development /usr/local/php/lib/php.ini

vi /usr/local/php/lib/php.ini
mysqli.default_socket = /usr/local/mysql/mysql.sock
date.timezone = Asia/Shanghai

#验证安装的模块
/usr/local/php/bin/php -m

#在合适位置新增
vi /etc/httpd.conf
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
DirectoryIndex index.php index.html

rm -f /usr/local/httpd/htdocs/index.html
vi /usr/local/httpd/htdocs/index.php

<?php
phpinfo();
?>

systemctl restart httpd


http://192.168.32.21/

mysqladmin -uroot -p password 'abc123'   
这个地方回车后,输入是初始密码,我们这边安装的初始密码是空的。回车即可
--------下面测试数据库工作是否正常-----
mysql -u root -p

CREATE DATABASE myadm;
GRANT all ON myadm.* TO 'myadm'@'%' IDENTIFIED BY 'admin123';
GRANT all ON myadm.* TO 'myadm'@'localhost' IDENTIFIED BY 'admin123';
flush privileges;

vi /usr/local/httpd/htdocs/index.php

<?php
$link=mysqli_connect('192.168.32.21','myadm','admin123');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
?>

########http://192.168.32.21/测试下###


#########上传phpMyAdmin-4.7.6-all-languages.zip到opt下面#####

---以下安装phpMyadmin------
cd /opt
unzip phpMyAdmin-4.7.6-all-languages.zip -d /opt/
mv phpMyAdmin-4.7.6-all-languages /usr/local/httpd/htdocs/myadm
cd /usr/local/httpd/htdocs/myadm
cp config.sample.inc.php config.inc.php

vi config.inc.php

$cfg['Servers'][$i]['host'] = '127.0.0.1'; //把localhost 改成IP 31行

http://192.168.32.21/myadm
使用root 以及前面为root配置的密码登录管理系统。可以对数据库进行管理操作了



大家可以跟着做,一台虚拟机足以,换下IP地址就可

LAMP 架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和
相关软件,能够提供动态 Web 站点服务及其应用开发环境。LAMP 是一个缩写词,具
体包括 Linux 操作系统、Apache 网站服务器、MySQL 数据库服务器、PHP(或 Perl、
Python)网页编程语言。本章将以源码编译的方式搭建 LAMP 环境,能够满足企业定
制化的需求。
在构建 LAMP 平台时,各组件的安装顺序依次为 Linux、Apache、MySQL、PHP。
其中 Apache 和 MySQL 的安装并没有严格的顺序;而 PHP 环境的安装一般放到最后,
负责沟通 Web 服务器和数据库系统以协同工作。

猜你喜欢

转载自blog.csdn.net/weixin_48190891/article/details/108349939