目录
一、LAMP介绍
二、Apache简介
三、Apache特点
四、搭建LAMP
五.MySQL安装
六.编译安装PHP环境
七.编译安装phpMyadmin
一、LAMP介绍
LAMP 架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态 Web 站点服务及其应用开发环境。LAMP 是一个缩写词,具体包括 Linux 操作系统、Apache 网站服务器、MySQL 数据库服务器、PHP(或 Perl、Python)网页编程语言。本章将以源码编译的方式搭建 LAMP 环境,能够满足企业定制化的需求。在构建 LAMP 平台时,各组件的安装顺序依次为 Linux、Apache、MySQL、PHP。其中 Apache 和 MySQL 的安装并没有严格的顺序;而 PHP 环境的安装一般放到最后,负责沟通 Web 服务器和数据库系统以协同工作。
二、Apache简介
2.1、“Apache HTTP Server”是开源软件项目的杰出代表,基于标准的 HTTP 网络协议提供网页浏览服务,在 Web 服务器领域中长期保持着超过半数的份额。Apache 服务器可以运行在 Linux、UNIX、Windows 等多种操作系统平台中。
2.2、Apache 服务器是针对之前出现的若干个 Web 服务器程序进行整合、完善后形成的软件,其名称来源于“A Patchy Server”,意思是“基于原有 Web 服务程序的代码进行修改(补丁)后形成的服务器程序”。
2.3、1995 年, Apache 服务程序发布了 1.0 版本,之后一直由“Apache Group”负责该项目的管理和维护;直到 1999 年,在“Apache Group”的基础上成立了 Apache 软件基金会(Apache Software Foundation,ASF)。目前,Apache 项目一直由 ASF 负责管理和维护。ASF 是非盈利性质的组织,最初只负责“Apache Web”服务器项目的管理,随着 Web应用需求的不断扩大,ASF 逐渐增加了许多与 Web 技术相关的开源软件项目,因此 Apache现在不仅仅代表着 Web 服务器,更广泛地代表着 ASF 管理的众多开源软件项目。ASF 基金会的官方网站是 http://www.apache.org/。
2.4、“Apache HTTP Server”是 ASF 旗下著名的软件项目之一,其正式名称是“httpd”,也就是历史上的 Apache 网站服务器。在后续内容中,若未作特殊说明,使用“Apache”或者“httpd”,均指的是“Apache HTTP Server”。
三、Apache特点
3.1、开放源代码:这是 Apache 服务器的重要特性之一,也是其他特性的基础。Apache 服务程序由全世界的众多开发者共同维护,并且任何人都可以自由使用,这充分体现了开源软件的精神。
3.2、跨平台应用:这个特性得益于 Apache 的源代码开放。Apache 服务器可以运行在绝大多数软硬件平台上,所有 UNIX 操作系统都可以运行 Apache 服务器,甚至 Apache 服务器可以良好地运行在大多数 Windows 系统平台中。Apache 服务器的跨平台特性使其具有被广泛应用的条件。
3.3、支持各种Web 编程语言:Apache服务器可支持的网页编程语言包括PerlPHP、Python、Java 等,甚至微软的 ASP 技术也可以在 Apache 服务器中使用。支持各种常用的 Web 编程语言使 Apache 具有更广泛的应用领域。
3.4、模块化设计:Apache 并没有将所有的功能集中在单一的服务程序内部,而是尽可能地通过标准的模块实现专有的功能,这为 Apache 服务器带来了良好的扩展性。其他软件开发商可以编写标准的模块程序,从而添加 Apache 本身并不具有的其他功能。
3.5、运行非常稳定:Apache 服务器可用于构建具有大负载访问量的 Web 站点,很多知名的企业网站都使用 Apache 作为 Web 服务软件。
3.6、良好的安全性:Apache 服务器具有相对较好的安全性,这是开源软件共同具有的特性。并且,Apache 的维护团队会及时对已发现的漏洞提供修补程序,为 Apache 的所有使用者提供尽可能安全的服务器程序。
四、搭建LAMP
解锁压缩包
[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 bzip2
讯享网
安装环境
讯享网[root@localhost opt]# yum -y install \ > gcc \ C语言的编译器 > gcc-c++ \ C++的编译器 > make \ 源代码编译(源代码转换成二进制文件) > pcre-devel \ 支持正则表达式 > expat-devel \ 网站解析HTML文件 > perl perl编译器
configure配置、编译及安装
[root@localhost httpd-2.4.29]# ./configure \ > --prefix=/usr/local/httpd \ 指定将 httpd 服务程序安装到哪个目录下,如/usr/local/httpd > --enable-so \ 启用动态加载模块支持,使 httpd 具备进一步扩展功能的能力。 > --enable-rewrite \ 启用网页地址重写功能,用于网站优化及目录迁移维护。 > --enable-charset-lite \ 启动字符集支持,以便支持使用各种字符集编码 > --enable-cgi 启用 CGI 脚本程序支持,便于扩展网站的应用访问能力。 [root@localhost httpd-2.4.29]# make && make install
优化执行路径
讯享网[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/ [root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
修改配置文件
[root@localhost httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf ServerName www.moon.com:80
建立[service].service 配置文件添加系统给服务,可以用systemctl命令管理
在/lib/systemd/system/目录下,建立一个以.service 结尾的单元(unit)配置文件
讯享网[root@localhost system]# vi 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 Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service. [root@localhost system]# systemctl is-enabled httpd.service enabled
五.MySQL安装
安装环境
[root@localhost opt]# yum -y install \ > ncurses \ > ncurses-devel \ > bison \ > cmake
创建运行账户
讯享网[root@localhost mysql-5.7.20]# useradd -s /sbin/nologin mysql [root@localhost mysql-5.7.20]# chown -R mysql:mysql /usr/local/mysql/
cmake配置
[root@localhost opt]# tar xf mysql-boost-5.7.20.tar.gz [root@localhost opt]# cd mysql-5.7.20/ [root@localhost opt]# cd mysql-5.7.20/ [root@localhost 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、DMYSQL_UNIX_ADDR:指定套接字文件的存储路径,数据库连接的文件
3、DSYSCONFDIR:指定初始化参数文件目录
3、DDEFAULT_CHARSET:指定默认使用的字符集编码,如 utf8。
5、DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci 是适用于 UTF-8 字符集的通用规则。
6、DWITH_INNOBASE_STORAGE_ENGINE=1 :安装INNOBASE存储引擎
7、DWITH_ARCHIVE_STORAGE_ENGINE=1 :安装ARCHIVE存储引擎
8、DWITH_BLACKHOLE_STORAGE_ENGINE=1 :安装ARCHIVE存储引擎
9、DWITH_PERFSCHEMA_STORAGE_ENGINE :安装FEDERATED存储引擎
编译安装
讯享网[root@localhost mysql-5.7.20]# make && make install
建立调整配置文件
[root@localhost mysql-5.7.20]# vi /etc/my.cnf [client] port = 3306 [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
设置环境变量、启动服务
讯享网[root@localhost mysql-5.7.20]# chown mysql:mysql /etc/my.cnf [root@localhost mysql-5.7.20]# echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile [root@localhost mysql-5.7.20]# echo 'export PATH' >> /etc/profile [root@localhost mysql-5.7.20]# source /etc/profile [root@localhost mysql-5.7.20]# cd /usr/local/mysql/ [root@localhost mysql]# bin/mysqld \ > --initialize-insecure \ > --user=mysql \ > --basedir=/usr/local/mysql \ > --datadir=/usr/local/mysql/data [root@localhost mysql]# cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ [root@localhost mysql]# systemctl start mysqld
设置root登陆并设置密码
[root@localhost mysql]# mysqladmin -u root -p password ""
六.编译安装PHP环境
安装环境
讯享网[root@localhost ~]# yum -y install \ > libjpeg \ > libjpeg-devel \ > libpng libpng-devel \ > freetype freetype-devel \ > libxml2 \ > libxml2-devel \ > zlib zlib-devel \ > curl curl-devel \ > openssl openssl-devel
解压、configure配置、安装
[root@localhost opt]# tar xf php-7.1.10.tar.bz2 [root@localhost 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 [root@localhost php-7.1.10]# make && make install [root@localhost php-7.1.10]# cp php.ini-development /usr/local/php/lib/php.ini
修改php.ini-development开发样板
讯享网vi /usr/local/php/lib/php.ini mysqli.default_socket = /usr/local/mysql/mysql.sock date.timezone = Asia/Shanghai
修改Apache配置文件
vi /etc/httpd.conf
#新增
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
DirectoryIndex index.php index.html
修改php主页内容
讯享网rm -f /usr/local/httpd/htdocs/index.html
vi /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>
systemctl restart httpd
访问本地ip
编辑php测试网页
讯享网[root@localhost ~]# vi /usr/local/httpd/htdocs/index.php <?php $link=mysqli_connect('192.168.174.51','moon','kda'); if($link) echo "<h1>Success!!</h1>"; else echo "Fail!!"; ?> ~
访问本地ip

七.编译安装phpMyadmin
上传phpMyadmin压缩包至/opt目录下并解压缩
[root@localhost opt]# unzip phpMyAdmin-4.7.6-all-languages.zip
将内容拷贝至Apache服务站点主页
讯享网mv /opt/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
在浏览器输入:http://192.168.174.51/myadm (自己的IP)



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/33520.html