ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

LAMP架构的基础和安装

2021-07-20 23:03:19  阅读:217  来源: 互联网

标签:架构 -- local apr LAMP usr mysql Apache 安装


LAMP架构

LAMP架构介绍

了解LAMP

LAMP架构是指Linux+Apache(httpd)+MySQL+PHP

ps:三个角色可以在一台机器、也可以分开(httpd和PHP要在一起)

LAMP工作原理

Apache和PHP是一个整体,PHP以模块的形式和Apache结合在一起。Apache不直接和Mysql打交道,通过PHP模块和Mysql进行动态交互然后再传给Apache展现给用户。静态文件则是一些在Linux服务器上的一些网址的log文件和图片。

Mysq/Mariadb介绍

MySQL是一个关系型数据库,由mysql ab公司开发

MySQL官网https://www.mysql.com

Mariadb为MySQL的一个分支,官网https://mariadb.com/

安装mysql

安装方式:rpm、源码、二进制免编译(本随笔使用的二进制免编译)

阿里云网络yum:wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

1.使用rz将mysql5.6传到/usr/local/src/下,并进行解压

tar -zxvf mysql-5.6.47-linux-glibc2.12-x86_64

2.移动到/usr/local/mysql

mv mysql-5.6.47-linux-glibc2.12-x86_64 /usr/local/mysql

3.创建mysql用户和数据目录,并更改它的权限

useradd -s /sbin/nologin mysql
mkdir -p /data/mysql ; chown -R mysql:mysql /data/mysql

4.执行安装mysql的脚本(需要支持perl环境)

yum install -y perl-Module-Install
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

5.修改mysql的配置文件

cp support-files/my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
vim /etc/my.cnf
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
server_id = 10
socket = /tmp/mysql.sock
cp support-files/mysql.server /etc/init.d/mysqld
vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/data/mysql

6.设置启动项,并开机自启

[root@antong mysql]# chkconfig --add mysqld
[root@antong mysql]# chkconfig mysqld on

7.查看mysql能否启动成功(查看进程端口)

[root@antong mysql]# service mysqld start 
Starting MySQL.Logging to '/data/mysql/antong.err'.
SUCCESS! 
[root@antong mysql]# ps -ef | grep mysqld
root      13870      1  0 07:55 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/antong.pid
mysql     14047  13870  4 07:55 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=antong.err --pid-file=/data/mysql/antong.pid --socket=/tmp/mysql.sock --port=3306
root      14073  13715  0 07:55 pts/0    00:00:00 grep --color=auto mysqld
[root@antong mysql]# netstat -ltunp | grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN  14047/mysqld

Apache介绍

ApacheApache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

Apache是一个基金会的名字,httpd才是我们要安装的软件包,早期它的名字就叫apache

Apache官网www.apache.org

安装Apache

1.将三个文件上传到/usr/local/src/Apache下

mkdir /usr/local/src/Apache
cd /usr/local/src/Apache
wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.27.tar.gz
wget http://mirrors.hust.edu.cn/apache/apr/apr-1.5.2.tar.gz
wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

2.解压三个文件

tar -zxvf apr-1.5.1.tar.gz
tar -zxvf apr-util-1.5.4.tar.gz
tar -zxvf httpd-2.4.33.tar.gz

3.安装apr,进入目录进行编译操作(需要安装libtoolT)

yum install -y libtool*
cd /usr/local/src/Apache/apr-1.5.1
./configure --prefix=/usr/local/apr
make && make install

4.安装apr-util(需要安装expat-devel)

cd /usr/local/src/Apache/apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr <----执行后自动生成makefile---->
yum install -y expat-devel
make && make install

5.安装Apache(http)

cd /usr/local/src/Apache/httpd-2.4.33
yum install -y pcre-devel
./configure \   //这里的反斜杠是脱义字符,加上它我们可以把一行命令写成多行
--prefix=/usr/local/apache2.4 \  //指定安装目录
--with-apr=/usr/local/apr \      //进行apr关联依赖
--with-apr-util=/usr/local/apr-util \   //进行apr-util关联依赖
--enable-so \       //支持动态扩展模块
--enable-mods-shared=most   //支持大多数动态的扩展模块
make && make install

6.查看so文件和加载的模块

ls /usr/local/apache2.4/modules
/usr/local/apache2.4/bin/httpd -M //查看加载的模块

PHP介绍

PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。

PHP官网www.php.net

安装PHP5

1.下载php5包并解压

wget http://cn2.php.net/distributions/php-5.6.30.tar.gz
tar -zxvf php-5.6.30.tar.gz

2.安装php5(需要额外安装软件,实际中需要什么软件就安装什么软件)

cd /usr/local/src/php-5.6.30
yum install -y libxml2-devel bzip2 bzip2-devel libpng libpng-devel openssl openssl-devel freetype freetype-devel opel-release epel-release
yum install -y libmcrypt-devel 
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc  --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif
make && make install

3.确定php是否安装成功(查看Apache模块)

/usr/local/apache2.4/bin/httpd -M
ls /usr/local/apache2.4/modules/
/usr/local/php/bin/php -i | less

4.配置PHP的配置文件

cp php.ini-production  /usr/local/php/etc/php.ini //development为开发环境production为生产环境

Apache解析PHP

1.修改httpd主配置文件

vim /usr/local/apache2.4/conf/httpd.conf
ServerName //解除注释
Require all granted
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php

2.测试Apache文件并重新加载Apache服务

/usr/local/apache2.4/bin/apachectl -t
/usr/local/apache2.4/bin/apachectl start  //先杀掉进程
/usr/local/apache2.4/bin/apachectl graceful
curl localhost

3.最终结果展示

cd /usr/local/apache2.4/htdocs
cat > test.php <<EOF
<?php
echo "PHP解析";
?>
EOF
curl localhost/test.php

标签:架构,--,local,apr,LAMP,usr,mysql,Apache,安装
来源: https://www.cnblogs.com/antong/p/15037472.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有