LAMP 架构是目前成熟的企业网站应用模式之一,可以提供动态 Web 站点服务及其应用开发环境。
LAMP 是一个缩写词,具体包括:
一、Linux 操做系统
二、Apache 网站服务器
三、MySQL 数据库服务器
四、PHP/Perl/Python 网页编程语言
这四个组件都是同类中的佼佼者,体如今:
一、成本低廉
二、可定制
三、易于开发
四、方便易用
五、安全和稳定
在构建 LAMP 平台时,各组件的安装顺序依次为:Linux、Apache、MySQL、PHP。其中 Apache 和 MySQL 的安装没有严格顺序;PHP通常放在最后,负责沟通 web 服务器和数据库系统。
http://www.javashuo.com/article/p-hvssibro-md.html Apache 服务安装
http://www.javashuo.com/article/p-ktgnavmj-be.html MySQL 服务安装(供参考,可自行选择)
https://pan.baidu.com/s/1bvWgs6--P_ja2QNf6E7IrQ 安装所需源码包
提取码: u3me
准备工做:
照旧先检查一下系统当前有无 rpm 安装的PHP包 rpm -qa | grep php ,若是有卸载掉
首先咱们须要安装几个依赖包:php
[root@mysql /]# mount /dev/sr0 /media/ # 挂载系统光盘 mount: /dev/sr0 is write-protected, mounting read-only [root@mysql /]# cd /media/Packages/ [root@mysql Packages]# rpm -ivh zlib-devel-1.2.7-17.el7.x86_64.rpm xz-devel-5.2.2-1.el7.x86_64.rpm libxml2-devel-2.9.1-6.el7_2.3.x86_64.rpm
安装扩展工具库,数据加密工具 libmcrypt、mhash、mcrypt 等
安装 libmcrypt:html
[root@mysql media]# tar zxf libmcrypt-2.5.8.tar.gz -C /usr/src/ [root@mysql media]# cd /usr/src/libmcrypt-2.5.8/ [root@mysql libmcrypt-2.5.8]# ./configure && make && make install # 一鼓作气 [root@mysql libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.* /usr/lib/ # 建立连接文件方便系统识别
安装 mhash:mysql
[root@mysql media]# tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/ [root@mysql media]# cd /usr/src/mhash-0.9.9.9/ [root@mysql mhash-0.9.9.9]# ./configure && make && make install [root@mysql mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.* /usr/lib/
安装 mcrypt:linux
[root@mysql media]# tar zxf mcrypt-2.6.8.tar.gz -C /usr/src/ [root@mysql media]# export LD_LIBRARY_PATH=/usr/local/lib :$LD_LIBRARY_PATH # 此条命令解决 configure 配置错误 [root@mysql media]# ./configure && make && make install
接下里编译安装 PHP:web
[root@mysql media]# tar zxf php-5.5.38.tar.gz -C /usr/src/ [root@mysql media]# cd /usr/src/php-5.5.38/ [root@mysql php-5.5.38]# ./configure --prefix=/usr/local/php5 \ > --with-mcrypt \ > --with-apxs2=/usr/local/httpd/bin/apxs \ > --with-mysql=/usr/local/mysql \ > --with-mysqli=/usr/local/mysql/bin/mysql_config \ > --with-config-file-path=/usr/local/php5 \ > --enable-mbstring [root@mysql php-5.5.38]# make && make install # 编译并安装 上述配置命令含义: --prefix:指定将 PHP 程序安装到那个目录下 --with-mcrypt:加载数据加密等扩展工具支持 --with-apxs2:设置 Apache 提供的 apxs 模块支持程序的文件位置 --with-mysql:设置 MySQL 数据库服务程序的安装位置 --with-mysqli:添加 mysqli 扩展支持 --with-config-file-path:设置 PHP 的配置文件 php.ini 将要存放的位置 --enable-mbstring:启用多字节多字符串功能,以便支持中文等代码
设置 LAMP 环境:
安装好 PHP 软件包后,服务器不会自动建立 php.ini 配置文件,可是在源码包里面提供了两种样例配置文件:sql
/usr/src/php-5.5.28/php.ini-development // 开发版样例文件,用于学习、测试 /usr/src/php-5.5.28/php.ini-production // 生产版样例文件,用于实际运营
选择其中一个将其复制到 PHP 配置目录中数据库
[root@mysql php-5.5.38]# cp php.ini-development /usr/local/php5/php.ini [root@mysql /]# vim /usr/local/php5/php.ini # 编辑配置文件 …… // 省略部份内容 default_charset = "utf-8" //设置默认的字符集为 utf-8 file_uploads = On // 容许经过 PHP 网页上传文件 upload_max_filesize = 2M //容许上传的文件大小 max_file_uploads = 20 //每一个 HTTP 最多容许请求上传的文件数 post_max_size = 8M // 每次经过表单 post 提交的数据量限制 short_open_tag = On // 容许识别 PHP 短语法标记,即<?......?> extension=php_mysqli.dll // 添加 MySQL 支持
ZendGuardLoader 优化模块,他能够提升 PHP 程序的执行效率、优化页面加载速度
这块可自行选择,不安装也不影响 PHP
添加 ZendGuardLoader 优化模块:编程
[root@mysql media]# tar zxf zend-loader-php5.5-linux-x86_64_update1.tar.gz -C /usr/src/ [root@mysql media]# cd /usr/src/zend-loader-php5.5-linux-x86_64/ [root@mysql zend-loader-php5.5-linux-x86_64]# cp ZendGuardLoader.so /usr/local/php5/lib/php/ # 复制到 PHP 配置目录下 [root@mysql /]# vim /usr/local/php5/php.ini …… // 省略部份内容 zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so zend_loader.enable=1
httpd.conf 配置调整:vim
[root@mysql /]# vim /usr/local/httpd/conf/httpd.conf …… // 省略部份内容 LoadModule php5_module modules/libphp5.so # 确认配置文件中有此行 <IfModule dir_module> DirectoryIndex index.html index.php # 添加语句 index.php </IfModule> AddType application/x-httpd-php .php # 添加此语句 注意:上述配置均不在同一处地方,须要查询
至此,PHP 基本安装完成了,接下来测试一下
编写一个 .php的测试网页文件,存放到网页文件根目录下安全
[root@mysql /]# vim /usr/local/httpd/htdocs/test1.php <?php phpinfo(); ?>
测试 PHP 网页可否访问 MySQL 数据库:
[root@mysql /]# vim /usr/local/httpd/htdocs/test2.php <?php $link=mysqli_connect('localhost','root','123'); # 用于链接数据库的用户和密码 if($link) echo "koko!!"; # 此处是访问成功的显示文本 mysqli_close($link); ?>
最后一步,也是大多数网站必备的一步,就是网站的后台,经过web网页来管理MySQL数据库的,使用的是PHPMyadmin管理套件,源码包能够从官方站点 https://www.phpmyadmin.net/ 进行下载:
将解压后的源码包目录,移动到网站目录下,并更名为phpadmin:
[root@mysql media]# tar zxf phpMyAdmin-4.7.2-all-languages.tar.gz -C /usr/local/httpd/htdocs/ [root@mysql media]# cd /usr/local/httpd/htdocs/ [root@mysql htdocs]# mv phpMyAdmin-4.7.2-all-languages phpmyadmin
复制到网站目录之后,还须要建立配置文件才可正常使用,可使用样板config.sample.inc.php进行修改,把该文件名改成config.inc.php便可,文件内有一行“blowfish_secret”配置项,默认已经设置了一个短语密钥(此密钥用于网页cookie认证,不需咱们记忆),可根据须要本身修改,我在这里只把文件名改一下,能够正常使用便可:
[root@mysql htdocs]# cd phpmyadmin/ [root@mysql phpmyadmin]# mv config.sample.inc.php config.inc.php