LAMP配置与应用
动态资源与语言
WEB 资源类型:
- 静态资源:原始形式与响应内容一致,在客户端浏览器执行
- 动态资源:原始形式通常为程序文件,需要在服务器端执行之后,将执行结果返回给客户端
PS:静态和动态的区别,不在于网页是否能动态变化,而在于服务端的页面文件和客户端得到页面文件是否一致
LAMP平台概述
LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整台系统和相关软件,能够提供动态web站点服务及其应用开发环境
LAMP是一个缩写词,具体包括Linux操作系统,Apache网站服务器,MySQL数据库服务器,PHP(或perl,Python)网页编程语言
LAMP各组件主要作用
-
(平台)Linux:作为LAMP架构的基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性(AMP组件也支持Windows、UNIX等平台) 。
-
(前台)Apache:作为LAMP架构的前端,是一款功能强大,稳定性好的Web服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容。
-
(后台)MySQL:作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息,客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些信息。
-
(中间连接)PHP/Perl/Python:作为三种开发动态网页的编程语言,负责解释动态网页文件,负责沟通Web服务器和数据库系统以协同工作,并提供Web应用程序的开发和运行环境。其中PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可以嵌入到HTML中,尤其适合于Web应用开发。
编译安装Apache http服务
1.环境准备
关闭防火墙 并将apache所需软件包放在/opt目录下
安装环境依赖包
yum -y install gcc gcc-c++ make pcre-devel expat-devel perl pcre
yum install -y
gcc #c语言编译器
gcc-c++ #c编译器
make #源代码编译器
pcre #pcre函数库
pcre-devel #pcre接口开发包
expat-devel #用于支持网站解析HTML、XML文件
perl #perl 语言编译器
3.解压软件包
4.编译安装
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
make
make install
./configure
--prefix=/usr/local/httpd #指定httpd的安装目录
--enable-so #启用动态加载模块支持,使httpd具备进一步扩展功能的能力
--enable-rewrite #启用网页地址的重写功能,用于网站优化、防盗链及目录迁移维护
--enable-charset-lite #启用字符集支持,以便支持使用各种字符集编码的页面
--enable-cgi #启用CGI(通用网关接口)脚本程序支持,便于网站外部扩展应用访问的能力
6 建立软链接
7 添加httpd系统服务
编译安装mysql
1 安装依赖包
yum install -y ncurses-devel autoconf cmake
yum -y install
ncurses #字符终端下图形互动功能的动态库
ncurses-devel #ncurses开发包
bison #语法分析器
cmake #mysql需要用到的cmake编译安装包
useradd -s /sbin/nologin mysql #创建mysql用户
2 编译安装
将软件包放入/opt目录下
make -j2 && make install #编译安装
编译安装php
1 安装依赖
将php所需软件包放入/opt目录下
yum -y install
gd
libjpeg libjpeg-devel
libpng libpng-devel
freetype freetype-devel
libxml2 libxml2-devel
zlib zlib-devel
curl curl-devel
openssl openssl-devel
解压软件包
配置软件模块
./configure
--prefix=/usr/local/php7 指定将 PHP 程序的安装路径
--with-apxs2=/usr/local/httpd/bin/apxs 指定Apache httpd服务提供的apxs 模块支持程序的文件位置
--with-mysql-sock=/usr/local/mysql/mysql.sock 指定mysql 数据库连接文件的存储路径
--with-config-file-path=/usr/local/php7 设置 PHP 的配置文件 php.ini 将要存放的位置
--with-mysqli 添加 MySQL 扩展支持 #mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定
--with-zlib 支持zlib功能,提供数据压缩
--with-curl 开启curl扩展功能,实现HTTP的Get下载和Post请求的方法
--with-gd 激活gd 库的支持
--with-jpeg-dir 激活jpeg 的支持
--with-png-dir 激活png 的支持
--with-freetype-dir
--with-openssl
--enable-mbstring 启用多字节字符串功能,以便支持中文等代码
--enable-xml 开启扩展性标记语言模块
--enable-session 会话
--enable-ftp 文本传输协议
--enable-pdo 函数库
--enable-tokenizer 令牌解释器
--enable-zip ZIP压缩格式
编译安装
make -j2 && make install
测试
安装论坛