lamp环境搭建
我们需要分别安装mysql php apache 并使用httpd解析php
1.安装mysql
cd /usr/local/src 先把软件包都放到这个目录下
tar zxf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz1 解压mysql
mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
cd /usr/local/mysql
useradd -s /sbin/nologin mysql 建立MySQL用户,因为启动MySQL需要该用户
mkdir -p /data/mysql ; chown -R mysql:mysql /data/mysql 创建datadir,数据库文件会放到这里面并更改权限,不更改后续操作就会出问题
yum install –y perl-Module-Install 下载需要的包
./scripts/mysql_install_db --user=mysql --datadirm/data/mysql
echo $? 返回值为0
首先复制配置文件
cp support-files/my-default.cnf /etc/my .cnf
cp: overwrite ‘/etc/my.cnf’? y
vi /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
vi /etc/init.d/mysqld
chkconfig --add mysqld 把mysqld服务加入到系统服务列表中
chkconfig mysqld on 使其开机就启动
启动
netstat -ltunp lgrep 3306 //看看有没有监听3306端口
2.安装apache
tar -zxvf apr-1.6.5.tar.gz
tar -zxvf apr-util-1.6.1.tar.gz
tar -zxvf httpd-2.4.39.tar.gz 把三个包解压了
其中apr(包含apr和apr-util)可以理解成一个通用的函数库,主要为上层应用提供支持。在这里,httpd是依赖apr和apr-util的,如果不安装这两个东西,httpd就无法工作。先来安装apr以及apr-util
cd apr-1.6.5/
yum -y install gcc gcc-c++
yum install -y libtool*
/configure --prefix=/usr/local/apr
make && make install
echo $? 返回值为0 正确
cd apr-util-1.6.1/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
如果在安装apr-util时出现如下错误:
libtool: link: cannot find the library ‘/usr/local/src/apr-util-1.5.4/xml/expat/libexpat.la' orunhandled argument "/usr/local/src/apr-util-1.5.4/xml/expat/libexpat.la '
需下载yum install -y expat-devel
make && make install
echo $? 返回值为0 正确
安装完apr以及apr-util,继续安装httpd
cd httpd-2.4.39/
需下载: yum install -y pcre-devel
cp -r apr-1.6.5 httpd-2.4.39/srclib/apr
cp -r apr-util-1.6.1 httpd-2.4.39/srclib/apr-util
./configure --prefix=/usr/local/apache2.4 --enable-so --with-pcre --with-included-apr --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork
make -j4 && make install
echo $? 返回值为0 正确
/usr/local/apache2.4/bin/httpd -M 查看加载的模块
3 安装php
tar -zxvf php-5.6.30.tar.gz 解压
cd php-5.6.30/
下载需要的工具
yum install -y libxml2-devel bzip2 bzip2-devel libpng libpng-devel openssl openssl-devel freetype freetype-devel
yum install -y epel-release
yum install -y libmcrypt-devel
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql
--with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --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
make -j4 && make install
echo$? 返回值为0 正确
/usr/local/apache2.4/bin/httpd -M 查看加载的模块
多一个这个
最后复制配置文件
cp php.ini-production /usr/local/php/etc/php.ini
4配置httpd支持php
httpd的主配置文件为/usr/local/apache2.4/conf/httpd.conf,编辑这个文件
#ServerName www.example.com:80
把#去掉
改为:
ServerName www.example.com:80
<Directory />
AllowOverride none
Require all denied
</Directory>
把denied改成granted
改为:
<Directory />
AllowOverride none
Require all granted
</Directory>
修改它的目的是,允许所有请求,如果不设置该行,则我们访问的时候会报403错误
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
在后面添加 index.php
改为
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
添加AddType application/x-httpd-php .php
改为:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
测试LAMP是否成功
httpd、MySQL和PHP安装之后,需要先检验httpd的配置文件是否正确,只有正确配置才可以正确解析PHP文件。
启动httpd之前需要先检验配置文件是否正确
/usr/local/apache2.4/bin/apachectl -t
启动httpd
/usr/local/apache2.4/bin/apachectl start
查看是否启动netstat -lnp lgrep httpd
另外,我们也可以使用curl命令进行简单的测试
curl localhost
<html><body><h1>It works !</h1></body></html>
也可以自己创建
cd /usr/local/apache2.4/htdocs
[root@localhost htdocs]# vim test.php
<?php
echo "php解析";
?>
[root@localhost htdocs]# curl localhost/test.php
php解析
到此lamp环境搭建好了!