LAMP(Linux+Apache+MySQL+PHP)完整搭建过程

目录

一、准备工作

二、安装apache

2.1.安装编译所需要的信赖软件包:

2.2.安装OpenSSL:

2.3.安装Apache:

三、安装MySQL5.7

[3.1. 解压到/usr/src目录:](#3.1. 解压到/usr/src目录:)

3.2.移动并修改文件名:

3.3.创建数据库存储目录:

3.4.新建mysql用户、组,指定mysql账户宿主目录:

[3.5.改变/usr/local/mysql属主和属组为mysql /data/mysql 属主为mysql:](#3.5.改变/usr/local/mysql属主和属组为mysql /data/mysql 属主为mysql:)

3.6.配置参数:

3.7.修改系统配置文件:

3.8、启动mysql,验证:

四、安装PHP

4.1、安装能够直接安装的依赖包:

4.2、安装需要下载的依赖包:

[4.3、安装php-7.4.16 ,配置、编译、安装:](#4.3、安装php-7.4.16 ,配置、编译、安装:)

五、配置php和apache

5.1.复制php配置文件:

5.2.编辑apache配置文件:

5.3.停止并重启服务:

六、测试页面

6.1.编辑首页并测试:

6.2.测试数据库连接的账户和密码:

七、PhpMyAdmin安装

7.1、切换到openssl扩展目录:

7.2、使用phpize对php进行添加扩展:

7.3、编译安装:

7.4、配置php.ini:


一、准备工作

  1. 关闭防火墙,关闭selinux

  2. 使用SFTP上传所需的安装包

  3. 为主机配置IP地址

  4. 配置本地YUM源

  5. 安装编译环境

#yum -y install gcc* make* openssl-devel

二、安装apache

2.1.安装编译所需要的信赖软件包:

yum -y install apr apr-util apr-util-devel pcre pcre-devel

apr:Apache可移植运行库。

pcre:perl语言兼容正则表达式,是一个用C语言编写的正则表达式函数库。

2.2.安装OpenSSL:

  1. 解压到/usr/src目录

tar xvfz openssl-1.0.2m.tar.gz -C /usr/src/

  1. 配置 编译 安装

cd /usr/src/openssl-1.0.2m/

./config --prefix=/usr/local/ssl --shared

make && make install

--shared生成动态链接库

OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份

2.3.安装Apache:

  1. 解压到/usr/src目录:

tar xvfz httpd-2.4.28.tar.gz -C /usr/src/

  1. 配置 编译 安装:

cd /usr/src/httpd-2.4.28/

./configure --prefix=/usr/local/apache2 -- enable-so --enable-rewrite --enable-ssl --with-ssl=/usr/local/ssl --withmpm= prefork && make && make install

--prefix 指定安装路径

--enable-so 让apache核心装载DSO(动态共享目标)

--enable-rewrite 启用重写功能

--enable-modules 将模块编译到apache中

--enable-ssl 打开ssl协议

--with-mpm 指定运行模型

  1. 配置启动脚本:

cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd

vim /etc/init.d/httpd

#!/bin/sh

#chkconfig:35 85 21

#description:apache!

35(运行级别) 85(系统开机时服务启动的顺序) 21(系统关机时服务关闭的顺序)

chkconfig --add httpd

chkconfig --list httpd

systemctl start httpd.service

注:编译安装成功后

安装在:/usr/local/apache2/ 目录下

配置文件:/usr/local/apache2/conf/httpd.conf

启动命令:/usr/local/apache2/bin/apachectl

默认网站家目录:/usr/local/apache2/htdcos

三、安装MySQL5.7

3.1. 解压到/usr/src目录:

tar xvfz httpd-2.4.28.tar.gz -C /usr/src/

3.2.移动并修改文件名:

cd /usr/src/

mv mysql-5.7.32-el7-x86_64/ /usr/local/mysql

3.3.创建数据库存储目录:

mkdir -p /data/mysql

3.4.新建mysql用户、组,指定mysql账户宿主目录:

cd

useradd -r -s /sbin/nologin -d /usr/local/mysql/ mysql

3.5.改变/usr/local/mysql属主和属组为mysql /data/mysql 属主为mysql:

chown -R mysql:mysql /usr/local/mysql/

chown -R mysql /data/mysql

3.6.配置参数:

cd /usr/local/mysql/

bin/mysqld --initialize --user=mysql -- basedir=/usr/local/mysql --datadir=/data/mysql

3.7.修改系统配置文件:

1、删除原有配置文件

rm --rf /etc/my.cnf

2、将my.cnf复制到/etc目录

cp my.cnf /etc/

3、复制改名脚本控制程序

cd /usr/local/mysql/support-files/

cp mysql.server /etc/init.d/mysql

4、编辑修改脚本控制程序,指定程序运行命令和数据库存储目录

vim /etc/init.d/mysql

basedir=/usr/local/mysql

datadir=/data/mysql

3.8、启动mysql,验证:

1.创建指向mysql命令的软链接

ln -s /usr/local/mysql/bin/mysql /usr/bin

2.修改控制脚本执行权限

chmod 755 /etc/init.d/mysql

3.添加服务:

chkconfig --add mysql

4.设置启动级别:

chkconfig --level 345 mysql on

5.启动服务,登录

systemctl start mysql

cd /usr/local/mysql/

bin/mysql -u root -p

四、安装PHP

4.1、安装能够直接安装的依赖包:

yum install -y systemd-devel libxml2-devel sqlite-devel libcurl-devel libpng-devel

systemd-devel :systemd 开发邮件列表

Libxml2:是一个xml c语言版的解析器,本来是为Gnome项目开发的工具,是一个基于MIT License的免费开源软件。

如果你安装基于libxml2开发的软件,那么你只需要安装libxml2就可以了,如果你需要编译使用了libxml2的软件,那就需要安装libxml2-devel

sqlite-devel:用于 sqlite3 可嵌入 SQL 数据库引擎的公共领域开发工具

libcurl:一个免费开源的,客户端url传输库

libpng:多种应用程序使用解析PNG图像格式的库

4.2、安装需要下载的依赖包:

rpm -ivh oniguruma-6.8.2-1.el7.x86_64.rpm

rpm -ivh oniguruma-devel-6.8.2-1.el7.x86_64.rpm

注:oniguruma是一个处理正则表达式的库

mkdir /usr/local/lib/pkgconfig/

ln -s /usr/local/ssl/lib/pkgconfig/*.pc/usr/local/lib/pkgconfig

vim ~/.bash_profile

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

export PKG_CONFIG_PATH

source ~/.bash_profile

pkg-config --list-all

4.3、安装php-7.4.16 ,配置、编译、安装:

tar xvfj php-7.4.16.tar.bz2 -C /usr/src/

cd /usr/src/php-7.4.16/

#./configure --prefix=/usr/local/php --with-configfile- path=/usr/local/php/etc --enable-mysqlnd --with-pdo-mysql --with-mysqli -- with-openssl-dir=/usr/local/ssl --with-openssl --enable-gd --with-zlib-dir -- with-curl --with-pear --enable-inline-optimization --enable-soap --enable-sockets --enable-mbstring --enable-fpm --with-fpm-user=mysql --with-fpm-group=mysql -- with-fpm-systemd --with-apxs2=/usr/local/apache2/bin/apxs

make && make install

五、配置php和apache

目的:使apache支持PHP页面

5.1.复制php配置文件:

cd /usr/src/php-7.4.16/

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

5.2.编辑apache配置文件:

编辑/usr/loca/apache2/conf/httpd.conf,添加PHP首页

vim /usr/local/apache2/conf/httpd.conf

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

5.3.停止并重启服务:

systemctl stop httpd.service

systemctl start httpd.service

六、测试页面

6.1.编辑首页并测试:

vim /usr/local/apache2/htdocs/index.php

<?php

Phpinfo();

?>

6.2.测试数据库连接的账户和密码:

vim /usr/local/apache2/htdocs/test2.php

<?php

$link = mysqli_connect(

'localhost',

'root', /*账户*/

'root', /*密码*/

'mysql'); /*数据库*/

if($link){

printf("Congratulations!");

}

?>

七、PhpMyAdmin安装

下载并解压PhpMyAdmin,将包复制到网站根目录下,并重命名为phpmyadmin文件夹。

unzip phpMyAdmin-5.1.0-all-languages.zip

mv phpMyAdmin-5.1.0-all-languages /usr/local/apache2/htdocs/phpMyAdmin

7.1、切换到openssl扩展目录:

cd /usr/src/php-7.4.16/ext/openssl/

7.2、使用phpize对php进行添加扩展:

mv config0.m4 config.m4

/usr/local/php/bin/phpize

7.3、编译安装:

./configure --with-openssl --with-phpconfig=/ usr/local/php/bin/php-config

make && make install

7.4、配置php.ini:

安装完成后,会返回一个.so文件(openssl.so)的目录。在此目录下把openssl.so 文件拷贝到你在php.ini 中指定的 extension_dir 下(在php.ini文件中查找:extension_dir =)

cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20190902

cp openssl.so /usr/local/php/etc/

编辑php.ini文件,在文件最后添加 extension=openssl.so

vim php.ini

...

;ffi.preload=

extension=openssl.so

重启Apache

systemctl restart httpd.service

浏览器访问 http://127.0.0.1/phpMyAdmin/

vim /usr/local/apache2/conf/httpd.conf

...

is requested.

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

...

systemctl restart httpd.service

浏览器访问 http://127.0.0.1/phpMyAdmin/

相关推荐
令狐少侠20117 分钟前
Linux 系统部署夜莺 nightingale 监控公司的watchdog
linux·运维·服务器
信工 180216 分钟前
RK3588系统烧录后扩容
linux·rk3588
无敌的牛31 分钟前
MySQL基础
数据库·mysql
Jay Chou why did36 分钟前
程序启动地址0x80000000
linux
kkce41 分钟前
域名CDN检测意义
服务器·前端·网络
鱼跃鹰飞1 小时前
面试题:解释一下什么是全字段排序和rowid排序
数据结构·数据库·mysql
王同学 学出来1 小时前
vue+nodejs项目在服务器实现docker部署
服务器·前端·vue.js·docker·node.js
落笔映浮华丶1 小时前
c程序的翻译过程 linux版
linux·c语言
阮松云1 小时前
code-server 配置maven
java·linux·maven
Dxy12393102161 小时前
MySQL连表查询讲解:从基础到实战
数据库·mysql