## CentOS 6.5安装LAMP
### 一、前言
CentOS 6.5是一个稳定且经典的Linux发行版,适用于各种服务器环境,在CentOS 6.5上搭建LAMP(Linux、Apache、MySQL、PHP)环境是Web开发和部署的基础,本文将详细介绍如何在CentOS 6.5上编译安装LAMP环境,适合希望自定义配置或者对源码级安装有需求的开发者。
### 二、准备工作
#### 2.1 最小化安装CentOS 6.5
首先进行最小化安装CentOS 6.5,确保系统干净且无冗余软件,然后创建一个专用工具目录`/tools`,便于管理后续下载的软件包。
```bash
mkdir /tools
setenforce 0 # 临时禁用SELinux以提高兼容性和灵活性
service iptables stop # 关闭防火墙服务以确保无阻碍的网络连接
```
#### 2.2 安装必备工具
使用`yum`包管理器安装一系列开发和编译工具,这些工具是构建Apache和PHP所必需的基础库和工具。
```bash
yum install y gcc flex bison \
make gettextdevel libXpmdevel libX11devel \
libXtdevel libjpegdevel libpngdevel \
libXrenderdevel libXrandrdevel libxsltdevel \
libxml2devel libexifdevel zlibdevel \
libmcryptdevel libicudevel libidndevel \
libtidydevel libwebpdevel libenchantdevel
```
### 三、安装Apache
#### 3.1 下载和解压Apache源码
从指定源下载Apache 2.2.32的源代码压缩包,解压并进入目录。
```bash
cd /tools
wget http://apache.fayea.com/httpd/httpd2.2.32.tar.gz
tar zxvf httpd2.2.32.tar.gz
cd httpd2.2.32
```
#### 3.2 配置、编译和安装Apache
使用`./configure`命令配置安装选项,设置前缀为`/usr/local/apache`,启用deflate功能等,然后进行源码编译和安装。
```bash
./configure prefix=/usr/local/apache \
enabledeflate enableexpires enableheaders \
enablemodules=most enableso withmpm=worker \
enablerewrite
make && make install
```
#### 3.3 配置Apache
编辑配置文件,如`httpd.conf`,以适应本地环境,设置虚拟主机、端口监听等。
```bash
vim /usr/local/apache/conf/httpd.conf
# 根据需要进行配置修改,例如设置ServerName和端口等
```
启动Apache服务并检查其状态。
```bash
/usr/local/apache/bin/apachectl start
ps ef | grep httpd # 检查进程是否启动成功
```
### 四、安装MySQL
#### 4.1 下载和解压MySQL源码
从官方源下载MySQL 5.6.17的源代码压缩包,解压并进入目录。
```bash
cd /tools
wget HTTPS://dev.mysql.com/get/Downloads/MySQL5.6/mysql5.6.17.tar.gz
tar zxvf mysql5.6.17.tar.gz
cd mysql5.6.17
```
#### 4.2 配置、编译和安装MySQL
使用`cmake`工具进行配置,创建必要的数据存储目录,并进行编译和安装。
```bash
cmake . DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
DMYSQL_DATADIR=/usr/local/mysql/data \
DSYSCOLOGIN_SUPPORT=ON \
DWITH_INNOBASE_STORAGE_ENGINE=1
make && make install
```
#### 4.3 初始化数据库并启动MySQL服务
初始化MySQL数据库,设置root密码并启动MySQL服务。
```bash
cd /usr/local/mysql
./bin/mysqld initialize user=mysql basedir=/usr/local/mysql datadir=/usr/local/mysql/data
chown R mysql:mysql /usr/local/mysql/data
bin/mysql_install_db user=mysql basedir=/usr/local/mysql
bin/mysqld_safe user=mysql &
```
### 五、安装PHP
#### 5.1 下载和解压PHP源码
从官方源下载PHP 5.5.12的源代码压缩包,解压并进入目录。
```bash
cd /tools
wget http://php.net/distributions/php5.5.12.tar.gz
tar zxvf php5.5.12.tar.gz
cd php5.5.12
```
#### 5.2 配置、编译和安装PHP
使用`./configure`命令配置安装选项,然后进行源码编译和安装。
```bash
./configure prefix=/usr/local/php \
withconfigfilepath=/usr/local/php \
withmysqli=/usr/local/mysql/bin/mysql_config \
withapxs2=/usr/local/apache/bin/apxs \
withzlibdir=/usr/local/lib \
withopenssl=shared \
enablembstring \
withfreetypedir=/usr/local/libpng \
withgd \
enablegdnativettf \
withcurl \
withcurlwrappers \
enableftp \
enablesockets \
withmcrypt \
withmhash \
enablezip \
withpdomysql=/usr/local/mysql \
withpdosqlite=/usr/local/sqlite3 \
withregex=dynamic \
withlibxmldir=/usr/local/libxml2 \
withxsl=dynamic \
enableinlineoptimization \
disabledebug \
withconfigfilescandir=/usr/local/php/etc \
withbz2=/usr/local/bzip2 \
withiconv=/usr/local/libiconv \
withpear=/usr/local/php/pear \
withldap=/usr/local/libldap \
withldapsasl=/usr/local/libldap \
enablembstring=all \
withmcrypt=/usr/local/mcrypt \
enablezip
make && make install
```
#### 5.3 配置PHP环境变量和Apache模块
将PHP集成到Apache中,并在Apache配置文件中引入PHP模块。
```bash
echo 'export PATH=/usr/local/php/bin:$PATH' >> /etc/profile
source /etc/profile
ln s /usr/local/php/libphp.so /usr/local/apache/modules/libphp5.so
vim /usr/local/apache/conf/httpd.conf
# 添加以下内容:
LoadModule php5_module modules/libphp5.so
AddType application/xhttpdphp .php
AddType application/xhttpdphpsource .phps
php_value include_path "/"
```
重启Apache服务以应用更改。
```bash
killall 9 httpd # 先杀掉旧的httpd进程
/usr/local/apache/bin/apachectl start # 重新启动Apache服务
```
### 六、测试和验证LAMP环境
完成所有组件的安装和配置后,通过访问默认的Apache站点或运行PHP脚本来测试LAMP环境是否正常工作,如果能够正常显示页面或执行PHP脚本,说明LAMP环境已经成功搭建。
以下是两个关于CentOS 6.5 LAMP环境的常见问题及解答:
### FAQs: 常见问题解答 (FAQs)
| **问题** | **答案** |
|||
| **如何查看Apache的版本信息?** | 你可以通过访问Apache的默认页面来查看版本信息,通常位于`http://your_server_ip/`或通过命令行执行`httpd v`来查看。 |
| **MySQL服务无法启动怎么办?** | 检查MySQL的错误日志文件,通常位于`/var/log/mysqld.log`或`/usr/local/mysql/data/hostname.err`,根据日志中的信息解决相应的问题,常见的问题包括权限不足、配置文件错误或缺少必要的依赖库。 |