LAMP的部署(一)

LAMP(Linux+Apache+Mysql+PHP)由linux操作系统、Apache Web服务、Mysql数据库和PHP(Python或Perl)脚本语言四种技术的开头字母组成。所有的组成产品均为开源软件,是国际上流行的架构,很多商业应用采取这个架构,和JAVA/J2EE架构相比,LAMP具有web资源丰富、轻量、快速开发等特点。微软的.NET架构相比,LAMP更具有通用、跨平台、高性能、低价格的优势,因此LAMP无论是性能、质量或者价格都是企业搭建网站的首选平台。

搭建LAMP平台步骤:

一、 准备安装包

Apache服务下载地址:http://down.51cto.com/data/300691

Mysql数据库下载地址:http://download.mysql.cn/

数据加密工具libmcrypt、 mhash 、 mcrypt下载地址:站点sf.net

PHP下载地址:http://download.pchome.net/development/sever/php/detail-7883.html

我将安装包下载之后通过挂载光盘的方式将其复制到/root目录下。

二、搭建Apache服务

1. 准备工作

防止端口、程序突出,建议将使用rpm方式安装的httpd以及相关的依赖包卸载。

建议先用rpm –q 查看一下有哪些包已安装

[root@ns ~]# rpm –q httpd http-manual webalizer subversion mod_python mod_ssl mod_perl  system-config-httpd  php  php-cli  php-ldap  php-common  mysql  dovecot

然后根据查看的结果卸载已安装的程序,如有依赖包的情况下,可在后面添加- -nodeps忽略掉就可以了

2.  源码编译及安装

  • 将httpd软件解压到/usr/src目录下,再切换到展开的源码目录中。

  • 配置

配置中选项含义如下:

--prefix:指定将httpd服务程序安装到哪个目录。

--enable-so:启用动态加载模块支持,使httpd具备进一步扩展功能的能力。

--enable-rewrite:启用网页地址重写功能,用于网站优化以及目录迁移维护。

--enable-charset-lite:启用字符集支持,以便于支持使用各种字符集编码的网页。

--enable-cgi:启用cgi脚本程序支持。便于扩展网站的应用访问能力。

  • 编译并安装

       

3. 确认安装已完毕

在编译过程中指定安装目录为/usr/local/httpd,因此httpd服务的各种程序、模块、帮助文件等都会复制到此目录下。

/usr/local/apache(默认为/uar/localhttpd)子目录的用途介绍:

/usr/local/httpd/bin:存放httpd服务的各种执行程序文件,包括主程序httpd、服务控制程序、apachectl等。

/usr/local/httpd/conf:存放httpd服务的各种配置文件,包括主配置文件httpd.conf、增强配置子目录extra/等。

/usr/local/httpd/htdocs/:存放网页文档,包括默认首页文件index.html等。

/usr/local/httpd/logs:存放httpd服务的日志文件。

/usr/local/httpd/modules:存放httpd服务的各种模板文件。

/usr/local/httpd/cgi-bin:存放各种cgi程序文件。

4. 优化执行路径     ----方便执行命令

         

示例:  httpd  -v =  /usr/local/apache/bin/httpd   -v   查看程序版本

5. 添加httpd为系统服务

将httpd添加为系统服务,通过chkconfig管理。需要建立可控的服务版本。

成功执行以上操作之后,每次linux系统进入运行级别3、5时,httpd服务会自动启动运行。在日常维护中,也可直接使用apachectl工具来控制httpd服务,也可使用/etc/init.d/httpd来控制,以下我只举例了/etc/init.d/httpd

/usr/local/bin/apachectl=/etc/init.d/httpd

到这里,httpd服务准备工作我们已经做完了,现在,我们接下来该部署mysql数据库。

三、搭建Mysql数据库

1. 准备工作:

避免发生端口、程序冲突,建议现用rpm –q确认mysql-server、mysql是否已安装

通过查询,我们得知mysql-server、mysql没有安装。

2. 创建运行用户 ,释放源码包到/usr/src目录下

3. 配置

故障表现及解决方法:

4. 编译并安装

编译可能出现故障表现:

解决办法:挂载系统盘安装ncurses-devel软件包就可以了

可能遇到警告:

5. 安装后另外调整

(!)建立配置文件 

(2)初始化数据库

为了能正常使用mysql数据库系统,需要以运行用户mysql的身份执行初始化任务,建立用户授权库、表,test测 试库等。初始化脚本mysql_install_db位于安装目录下的bin文件夹中。

除此之外,需要调整用于存放数据库内容的文件夹属性,便于mysql有权限对其进行读写操作。

(3)优化执行路径、程序库路径

为mysql数据库的各种执行程序添加符号链接,便于使用。

建议将mysql的库文件、头文件添加符号链接,便于安装其他的用到这些文件的软件包时能自动搜索。

(4)添加系统服务

同样,到这里mysql数据库的准备工作以及做好,接下来安装PHP

四、PHP的安装

1. 准备工作

避免发生程序冲突,先将rpm方式安装的php及相关依赖包,若有则卸载。

2. 安装扩展工具库

实际企业应用中,一部分基于PHP开发的Web应用系统需要额外的扩展工具。安装数据加密工具libmcrypt、mhash、mcrypt等。

安装libmcrypt

安装mhash

安装mcrypt

配置报错:(提示未安装libmcrypt,其实刚刚已经安装完毕)

解决办法:

3. 解压PHP到/usr/src目录下,并进行相关配置

模块详解:

  • -with-mcrypt:加载数据加密等扩展工具支持。

  • --with-apxs2:设置“Apache HTTP Server”提供的apxs模块支持程序文件设置。

  • --with-mysql:设置MySQL数据库服务程序的安装位置。

  • --with-config-file-path:设置PHP的配置文件php.ini将要存放的位置。

  • --enable-mbstring:启用多字节字符串功能,便于支持中文等代码。

                      

4. 编译并安装PHP

配置报错:(提示xml-config未安装)

解决办法:因为相关依赖包较多,建议使用yum安装xml*

转载于:https://blog.51cto.com/812893920/1725638

LAMP的部署(一)相关推荐

  1. LAMP环境部署及搭建网校系统

    LAMP环境部署-本地搭建edusoho网校系统: 一.LAMP介绍 二.项目环境 三.环境清理及准备 四.LAMP环境部署 五.服务配置 六.导入edusoho网站源码 七.网站安装向导 一.LAM ...

  2. day11-进程的优先级LAMP项目部署实战

    进程的优先级与LAMP项目部署实战 一.进程的优先级(扩展) 1.什么是进程的优先级 Linux是一个多用户.多任务的操作系统,系统中通常运行着非常多的进程.哪些进程先运行,哪些进程后运行,就由进程优 ...

  3. 2021-06-26进程的优先级与LAMP项目部署实战

    进程的优先级与LAMP项目部署实战 一.进程的优先级(扩展) 1.什么是进程的优先级 Linux是一个多用户.多任务的操作系统,系统中通常运行着非常多的进程.哪些进程先运行,哪些进程后运行,就由进程优 ...

  4. 运维之道 | 基于 LAMP 环境部署 Discuz 论坛

    基于 LAMP 环境部署 Discuz 论坛 LAMP环境部署 一.基于VMware虚拟机部署Centos系统 [root@localhost ~]# cat /etc/redhat-release ...

  5. (十)RHEL系统之基于LAMP架构部署商城系统

    基于LAMP架构部署商城系统 接上篇:(九)RHEL系统之linux自有服务 任务背景 小王经过一段时间学习,慢慢的了解到公司的一些业务架构,发现好几个项目不是LAMP架构就是Nginx+Tomcat ...

  6. LAMP项目部署实战

    LAMP项目部署实战 一.LAMP环境部署 1.回顾LAMP LAMP = Linux + Apache + MySQL + PHP Apache:主要用于接收用户的请求,处理业务逻辑,返回结果给客户 ...

  7. Centos7.2 基于LAMP框架部署Discuz论坛

    LAMP是Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的简称,此处则为: LAMP是Linux+Apache+MariaDB+PHP 请关闭防火墙以及将SELI ...

  8. linux lamp架构部署,Centos7部署LAMP平台之架构之路

    部署lamp平台搭建 一.源码安装lamp 1.安装apache [root@localhost ~]# yum -y install gcc* apr-devel apr-util-devel pc ...

  9. 电商 lamp java_搭建LAMP环境部署Ecshop电商网站

    实战-部署Ecshop电商网站 实验环境 Centos7 ip:192.168.121.17 一.关闭防火墙和selinux [root@localhost ~]# systemctl stop fi ...

最新文章

  1. 【一个诡异的问题】用饿了么的自定义主题之后发现表格顶部的复选框checkbox错位了
  2. [Java,MVC] Eclipse下搭建Spring MVC
  3. 设计模式---装饰模式
  4. [react] <div onClick={handlerClick}>单击</div>和<div onClick={handlerClick(1)}>单击</div>有什么区别?
  5. docker php示例,Docker PHP 例子
  6. 不能定义声明dllimport_不允许 dllimport 函数 的定义 高手帮帮忙
  7. Tiktok培训可以去学习吗?
  8. AutoWare 使用
  9. swfobject.js 简介
  10. WELCOME TO `ICE WORLD`
  11. PHP算术题,阶乘相加
  12. 软件测试,2019.2.15中移物联网面试心路历程。
  13. Error starting Tomcat context
  14. 有没有Type-C接口的无线投屏器?HDMI、USB、Type-C接口的无线投屏器又有什么区别呢?
  15. TestBird《2021中国手游测试白皮书》---国内手游
  16. (FortiGate)飞塔防火墙配置端口映射(VIP)
  17. python3 分割list
  18. 孤立森林算法 python_孤立森林(isolation forest)
  19. PTA5-2 畅通工程之最低成本建设问题 (克鲁斯卡尔)
  20. IAR编辑器字体配置

热门文章

  1. yii beforeaction 如何赋值全局变量_前端如何进行用户权限管理
  2. python 数学计算库_Python标准库——数学运算
  3. java tomcat数据库连接池_tomcat配置数据库连接池2
  4. ConfigParser.InterpolationSyntaxError: ‘%‘ must be followed by ‘%‘ or ‘(‘, found: “%‘“
  5. [Ext JS 4] 实战之Load Mask - 在Grid Reconfigure的使用状况
  6. ppt怎么一次性改全部字体_PPT的字体怎么选择?
  7. jquery html5引导页,jQuery插件实现的页面功能介绍引导页效果
  8. JS中元素的属性(class、style)操作
  9. vi/Vim的快速使用
  10. 重现Oracle数据库Hang住的情况