LAMP 系统服务搭建过程详解

LAMP 架构在企业里用得非常广泛,目前很多电商公司、游戏公司、移动互联网公司大多都采用这种架构。LAMP指的是Linux、Apache、MySQL、PHP。下面记录了 LAMP 架构系统服务的搭建过程。

一、MySQL数据库安装

1. 系统环境

CentOS 6.4 x86_64 Mini 版本安装

2. 基础软件包安装

[[email protected] ~]# yum install gcc vim make wget -y

3. 下载

# 进入源码存放目录
[[email protected] ~]# cd /usr/local/src
# 下载MySQL安装包
[[email protected] src]# wget downloads.mysql.com/archives/get/file/mysql-5.5.40-linux2.6-x86_64.tar.gz

4. 解压安装

# 解压
[[email protected] src]# tar -zxf mysql-5.5.40-linux2.6-x86_64.tar.gz
# 设置安装路径
[[email protected] src]# mv mysql-5.5.40-linux2.6-x86_64 /usr/local/mysql

5. 建立MySQL用户

[[email protected] src]# useradd -s /sbin/nologin -M mysql

6. 准备数据目录

# 进入MySQL安装目录
[[email protected] src]# cd /usr/local/mysql
# 创建MySQL数据目录
[[email protected] mysql]# mkdir -p /var/lib/mysql
# 设置目录权限
[[email protected] mysql]# chown -R mysql:mysql /var/lib/mysql

7. 初始化数据库

[[email protected] mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql
when specifying MySQL privileges !
Installing MySQL system tables...
OK
Filling help tables...
OK  #看到2个OK说明初始化成功

8. 拷贝配置文件

[[email protected] mysql]# /bin/cp support-files/my-large.cnf /etc/my.cnf

9. 拷贝启动脚本

# 拷贝启动脚本
[[email protected] mysql]# /bin/cp support-files/mysql.server /etc/init.d/mysqld
# 赋予可执行权限
[[email protected] mysql]# chmod 755 /etc/init.d/mysqld

10. 修改启动脚本

[[email protected] mysql]# vim /etc/init.d/mysqld
# 修改设置内容如下
basedir=/usr/local/mysql
datadir=/var/lib/mysql

11. 把MySQL添加到服务

# 添加到service列表
[[email protected] mysql]# chkconfig --add mysqld
# 设置开机启动
[[email protected] mysql]# chkconfig mysqld on

12. 启动MySQL服务

[[email protected] mysql]# service mysqld start
Starting MySQL... SUCCESS!

13. 查看验证MySQL启动进程

[[email protected] mysql]# ps -e | grep mysql
 1830 pts/1    00:00:00 mysqld_safe
 2121 pts/1    00:00:00 mysqld

14. 配置MySQL环境变量

将 MySQL 客户端命令路径加入 PATH 环境变量中去。

# 设置PATH环境变量
[[email protected] mysql]# echo ‘export PATH=$PATH:/usr/local/mysql/bin‘ > /etc/profile.d/mysql.sh
[[email protected] mysql]# source /etc/profile.d/mysql.sh

15. 登录MySQL测试

[[email protected] mysql]# mysql    # 默认没有密码
Your MySQL connection id is 1
Server version: 5.5.40-log MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
... ...
mysql>

二、Apache服务安装

apache可以通过yum的方式来安装,也可以通过源码编译的方式来安装,这里采用编译源码的方式进行安装。

1. 系统环境

CentOS 6.4 x86_64 Mini 版本安装

2. 下载解压apache安装包

[[email protected] src]# cd /usr/local/src
[[email protected] src]# wget  http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.31.tar.gz
[[email protected] src]# tar zxf httpd-2.2.31.tar.gz

3. 安装必要的库和工具

[[email protected] src]# yum install -y pcre pcre-devel apr apr-devel zlib-devel gcc make

4. 配置编译参数

[[email protected] httpd-2.2.31]# cd httpd-2.2.31
[[email protected] httpd-2.2.31]# ./configure --prefix=/usr/local/apache2 --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre
[[email protected] httpd-2.2.31]# echo $?

5. 编译安装

[[email protected] httpd-2.2.31]# make && make install
[[email protected] httpd-2.2.31]# echo $?

6. 配置apache环境变量

[[email protected] httpd-2.2.31]# echo ‘export PATH=$PATH:/usr/local/apache2/bin‘ > /etc/profile.d/http.sh
[[email protected] httpd-2.2.31]# source /etc/profile.d/http.sh

7. apache的启动和停止

apachectl start    # 启动
apachectl stop     # 停止
apachectl restart  # 重启apachectl -t       # 检查语法apachectl -M       # 查看加载模块

8. 将apache加入系统服务

# 拷贝服务脚本
[[email protected] httpd-2.2.31]# cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
[[email protected] httpd-2.2.31]# vim /etc/init.d/httpd    # 第一行下边添加2行内容
#!/bin/sh
# chkconfig: 2345 61 61
# description: Apache

# 添加到系统服务 并设置开机启动
[[email protected] httpd-2.2.31]# chkconfig --add httpd
[[email protected] httpd-2.2.31]# chkconfig httpd on

9. 验证服务是否正常

[[email protected] httpd-2.2.31]# service httpd start
httpd: apr_sockaddr_info_get() failed for vip    # 出现警告信息
httpd: Could not reliably determine the server‘s fully qualified domain name, using 127.0.0.1 for ServerName

解决警告信息的方法:去掉 ServerName www.example.com:80 行的注释#。

三、PHP系统安装

1. 下载解压安装包

[[email protected] ~]# cd /usr/local/src
[[email protected] src]# wget http://cn2.php.net/get/php-5.5.38.tar.gz/from/this/mirror -O php-5.5.38.tar.gz
[[email protected] src]# tar zxf php-5.5.38.tar.gz

2. 下载依赖库和工具

[[email protected] src]# yum install -y epel-release[[email protected] src]# yum install -y libxml2-devel openssl openssl-devel bzip2 bzip2-devel libjpeg-devel libpng libpng-devel freetype freetype-devel libmcrypt-devel

3. 编译配置安装选项

[[email protected] php-5.5.38]# cd php-5.5.38
[[email protected] php-5.5.38]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc  --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6

4. 编译安装

[[email protected] php-5.5.38]# make && make install
[[email protected] php-5.5.38]# echo $?

5. 拷贝php配置文件

[[email protected] php-5.5.38]# cp php.ini-production /usr/local/php/etc/php.ini

6. 配置php环境变量

[[email protected] php-5.5.38]# echo ‘export PATH=$PATH:/usr/local/php/bin‘ > /etc/profile.d/php.sh
[[email protected] php-5.5.38]# source /etc/profile.d/php.sh

到此为止,php完成基本的编译安装,后续解析php还得另外配置。

四、配置支持php解析

1. 修改apache配置文件

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Allow from all    # Deny修改为Allow
</Directory>

2. 支持php脚本解析

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php    # 添加这1行

3. 添加php索引支持

<IfModule dir_module>
    DirectoryIndex index.html index.htm index.php    # 添加php索引
</IfModule>

4. 测试配置语法和重启apache服务

[[email protected] ~]# apachectl -t
Syntax OK
[[email protected] ~]# service httpd restart

5. 测试php解析

编写测试文件:/usr/local/apache2/htdocs/index.php

<?php
    echo "hello php!"
?>

命令行curl测试:

[[email protected] htdocs]# curl localhost/index.php
hello php![[email protected] htdocs]#

解析 php 成功!

时间: 2024-12-28 18:19:34

LAMP 系统服务搭建过程详解的相关文章

LAMP架构搭建以及基于LAMP架构的主流论坛和博客搭建过程详解

了解网站架构的朋友都知道,现在很多网站的架构都是采用LAMP(Linux+Apache+Mysql/Mariadb+Php)的,至于LAMP架构本身我们就不做过于深入的探讨了,今天我给大家分享的是关于如何搭建LAMP构架,以及如何基于lamp架构去搭建目前国内比较流行的两大开源论坛(phpwind.discuz)一大开源博客(wordpress),通过这个过程也就能让大家明白我们经常上的论坛以及博客,包括包括我们访问的各个网站到底是如何工作起来的. 注意:为了方便给大家展示实验效果,我们就直接关

Memcached集群/分布式/高可用 及 Magent缓存代理搭建过程 详解

当网站访问量达到一定时,如何做Memcached集群,又如何高可用,是接下来要讨论的问题. 有这么一段文字来描述“Memcached集群” Memcached如何处理容错的? 不处理!:) 在memcached节点失效的情况下,集群没有必要做任何容错处理.如果发生了节点失效,应对的措施完全取决于用户.节点失效时,下面列出几种方案供您选择: * 忽略它! 在失效节点被恢复或替换之前,还有很多其他节点可以应对节点失效带来的影响. * 把失效的节点从节点列表中移除.做这个操作千万要小心!在默认情况下(

Jekyll搭建过程详解

原先博客用Jekyll搭建在Github上,近来访问缓慢,而且markdown不太方便写,故决定在博客园安个新家. 文章见Github博客: 搭建过程:http://wuxichen.github.io/Myblog/backup/2014/09/04/git-jekyll.html Pygments语法高亮:http://wuxichen.github.io/Myblog/backup/2014/09/09/JekyllPygments.html

LVS-DR模式 搭建过程详解

LVS-DR(director route)模式框架图: 说明:(图上IP地址有误,以下表为准) 分发器 Realserver1 Realserver2 DIP eth0 : 192.168.11.70 RIP eth0 : 192.168.11.62 RIP eth0 : 192.168.11.64 DG : 192.168.11.1 DG : 192.168.11.1 DG : 192.168.11.1 VIP eth0:1 192.168.11.63 VIP lo:1 192.168.11

SSH框架搭建过程详解

Spring.Struts2.Hibernate框架: 具体三大框架的知识以前的文章写过,在这里整合 Spring框架知识:http://www.cnblogs.com/xuyiqing/category/1164340.html Struts2框架知识:http://www.cnblogs.com/xuyiqing/category/1164341.html Hibernate框架知识:http://www.cnblogs.com/xuyiqing/category/1163473.html

Nginx搭建反向代理服务器过程详解 - Windows

本文主要是Nginx做一个简单的反向服务器代理和静态文件缓存. 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器 我们就开始动手吧. 1. Vistudio 创建两个简单的 WebApplication (Web Forms),一个叫WebApplication1,一个叫 WebApplication2. 为了区别

Nginx搭建集群服务器过程详解

Nginx+Apache+PHP+MySQL搭建集群服务器过程详解 概念介绍在本文未能提及,请自助上网科普,直接进入过程详解: 集群架构图大致如下: 一.软件下载 序号 软件名称 软件版本 下载地址 1 操作系统 Windows Server 2008 Enterprise 64bit 2 Php php-5.6.19-Win32-VC11-x64 Thread Safe(由于HTTP服务器用的apache) http://windows.php.net/downloads/releases/p

vue-cli3.0 脚手架搭建项目的过程详解

1.安装vue-cli 3.0 ? 1 2 3 npm install -g @vue/cli # or yarn global add @vue/cli 安装成功后查看版本:vue -V(大写的V) 2.命令变化 ? 1 vue create --help 用法:create [options] <app-name> 创建一个由 `vue-cli-service` 提供支持的新项目 选项: -p, --preset <presetName>       忽略提示符并使用已保存的或

solaris启动过程详解

在Sparc平台下,Solaris系统中有一个类似PC BIOS的芯片程序(EEPROM OpenBoot)负责识别分区.文 件系统和加载内核,在Solaris 2.6之后的版本中,默认的内核文件存放在/platform/`arch`/kernel/unix 位置,`arch`指令是指明系统的硬件体系,目前一般是i86pc(Intel IA32)或sun4u(Sun UntraSparc). 在Intel体系中,因为没有eeprom firmware,所以系统提供了一个模拟eeprom的引导程序