linux怎么查看本机内存大小
234
2022-11-11
源码编译构建LAMP服务
源码编译构建LAMP服务####LAMP介绍####LAMP 架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态 Web 站点服务及其应用开发环境。LAMP 是一个缩写词,具体包括 Linux 操作系统、Apache 网站服务器、MySQL 数据库服务器、PHP(或 Perl、Python)网页编程语言。本章将以源码编译的方式搭建 LAMP 环境,能够满足企业定制化的需求。在构建 LAMP 平台时,各组件的安装顺序依次为 Linux、Apache、MySQL、PHP。其中 Apache 和 MySQL 的安装并没有严格的顺序;而 PHP 环境的安装一般放到最后,负责沟通 Web 服务器和数据库系统以协同工作。
####Apache 简介####“Apache HTTP Server”是开源软件项目的杰出代表,基于标准的 HTTP 网络协议提供网页浏览服务,在 Web 服务器领域中长期保持着超过半数的份额。Apache 服务器可以运行在 Linux、UNIX、Windows 等多种操作系统平台中。Apache 服务器是针对之前出现的若干个 Web 服务器程序进行整合、完善后形成的软件,其名称来源于“A Patchy Server”,意思是“基于原有 Web 服务程序的代码进行修改(补丁)后形成的服务器程序”。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 Server”是 ASF 旗下著名的软件项目之一,其正式名称是“Apache 网站服务器。在后续内容中,若未作特殊说明,使用“Apache”或者“HTTP Server”。
####Apache 的主要特点####1、开放源代码:这是 Apache 服务器的重要特性之一,也是其他特性的基础。Apache 服务程序由全世界的众多开发者共同维护,并且任何人都可以自由使用,这充分体现了开源软件的精神。
2、跨平台应用:这个特性得益于 Apache 的源代码开放。Apache 服务器可以运行在绝大多数软硬件平台上,所有 UNIX 操作系统都可以运行 Apache 服务器,甚至 Apache 服务器可以良好地运行在大多数 Windows 系统平台中。Apache 服务器的跨平台特性使其具有被广泛应用的条件。
3、支持各种Web 编程语言:Apache服务器可支持的网页编程语言包括Perl、PHP、Python、Java 等,甚至微软的 ASP 技术也可以在 Apache 服务器中使用。支持各种常用的 Web 编程语言使 Apache 具有更广泛的应用领域。
4、模块化设计:Apache 并没有将所有的功能集中在单一的服务程序内部,而是尽可能地通过标准的模块实现专有的功能,这为 Apache 服务器带来了良好的扩展性。其他软件开发商可以编写标准的模块程序,从而添加 Apache 本身并不具有的其他功能。
5、运行非常稳定:Apache 服务器可用于构建具有大负载访问量的 Web 站点,很多知名的企业网站都使用 Apache 作为 Web 服务软件。
6、良好的安全性:Apache 服务器具有相对较好的安全性,这是开源软件共同具有的特性。并且,Apache 的维护团队会及时对已发现的漏洞提供修补程序,为 Apache 的所有使用者提供尽可能安全的服务器程序。
实验步骤:1.实验环境初步设置[root@localhost ~]# systemctl stop firewalld ###零时关闭防火墙[root@localhost ~]# systemctl disable firewalld ###永久关闭防火墙Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@localhost ~]# setenforce 0 ###零时关闭核心防护[root@localhost yum.repos.d]# sed -i '/SELINUX/s/=[a-z]/=disabled/g' /etc/sysconfig/selinux###永久关闭核心防护搭yum仓库[root@localhost ~]# mount /dev/cdrom /mnt ###挂载光盘mount: /dev/sr0 写保护,将以只读方式挂载[root@localhost ~]# cd /etc/yum.repos.d/[root@localhost yum.repos.d]# mkdir jlh[root@localhost yum.repos.d]# mv C jlh ###将里面的配置文件移到jlh文件夹里[root@localhost yum.repos.d]# cp jlh/CentOS-Base.repo local.repo[root@localhost yum.repos.d]# vi local.repo[centos]name=centosbaseurl=file:///mnt ###其yum下载源未mnt下gpgcheck=0enabled=1#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
-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、DSYSCONFDIR:指定初始化参数文件目录#3、DDEFAULT_CHARSET:指定默认使用的字符集编码,如 utf8。#4、DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci是适用于 UTF-8 字符集的通用规则。#5、DWITH_EXTRA_CHARSETS:指定额外支持的其他字符集编码。
------注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧------------
[mysql]port = 3306default-character-set=utf8socket = /usr/local/mysql/mysql.sock
[mysqld]user = mysqlbasedir = /usr/local/mysqldatadir = /usr/local/mysql/dataport = 3306character_set_server=utf8pid-file = /usr/local/mysql/mysqld.pidsocket = /usr/local/mysql/mysql.sockserver-id = 1
--initialize-insecure \--user=mysql \--basedir=/usr/local/mysql \--datadir=/usr/local/mysql/data
(6)拷贝php配置文件[root@localhost php-7.1.10]# cp php.ini-development /usr/local/php/lib/php.ini###从php源码中复制 php.ini--development 到php安装目录的lib目录下改名为php.ini[root@localhost php-7.1.10]# vi /usr/local/php/lib/php.ini ###编辑该配置文件###本地数据库一般是通过socket文件连接,而本地数据库的socket文件如果不在默认路径,就必须告诉php从哪里读取socket文件。将php与mysql关联.
mysql> exit 退出Bye
(11)编辑/usr/local/php-7.1.10]# systemctl restart 在启动flush privileges; ###刷新Query OK, 0 rows affected (0.00 sec)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~