1.安装MySQL
(1)下载
[root@localhost ~]# cd /usr/local/src
//软件包都放这里方便管理
(2)解压(下载源码包最好在官网下载)
[root@localhost src]#wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
//若wget用不了,可先 ***“yum install -y wget”***下载,然后再进行下载
解压压缩包:
tar -zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
(3)安装和配置
1).移动位置
[root@localhost src]# mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql [root@localhost src]# cd /usr/local/mysql/
2).创建MySQL用户
[root@lamp mysql]# useradd -s /sbin/nologin mysql
3).创建datadir,数据库文件会放到这里面
root@lamp mysql]# mkdir -p /data/mysql
4).更改权限,否则后续容易出问题
[root@lamp mysql]# chown -R mysql:mysql /data/mysql
5).执行脚本
[root@lamp mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/
//–user表示定义数据库的以哪个用户的身份运
//–datadir表示定义数据库的安装目录
//注:若出错安装autoconf :yum install -y autoconf
6).修改配置文件
#These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
//basedir表示MySQL包所在路径
datadir = /data/mysql
//表示定义存放数据的位置
port = 3306 //port表示定义MySQL服务监听的端口号
server_id = 155 //表示该MySQL服务的ID号
socket = /tmp/mysql.sock //定义MySQL服务监听的套接字地址
7).复制启动脚本文件
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld [root@localhost mysql]#vi /etc/init.d/mysqld
//修改启动脚本
basedir=/usr/local/mysql
datadir=/data/mysql
开启服务:
[root@localhost mysql]# chkconfig --add mysqld
//把mysql服务加到系统服务列表中
[root@localhost mysql]# chkconfig mysqld on
//开机就启动
[root@localhost mysql]# service mysqld start
//启动服务
2.安装Apache(Apache官网www.apache.org)
Apache是一个基金会的名字,httpd才是我们要安装的软件包,早期它的名字就叫apache
1).下载源码包:httpd-2.4.39.tar、apr-1.6.5.tar和apr-util-1.6.1.tar
[root@localhost src]# ls
apr-1.6.5.tar.gz mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
apr-util-1.6.1.tar.gz php-5.6.30.tar.gz
httpd-2.4.46.tar.gz php-7.1.6.tar.bz2
2).解压压缩包:
[root@localhost src]# tar -zxvf apr-1.6.5.tar.gz
[root@localhost src]# tar -zxvf apr-util-1.6.1.tar.gz
[root@localhost src]# tar -zxvf httpd-2.4.46.tar.gz
3).安装和配置:
[root@localhost mysql]# cd /usr/local/src/apr-1.6.5
[root@localhost mysql]# ./configure --prefix=/usr/local/apr
[root@localhost mysql]# make && make install
[root@localhost mysql]# cd /usr/local/src/apr-util-1.6.1
[root@localhost apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
(出错了可下载gcc:yum install -y gcc)
[root@localhost apr-util-1.6.1]# make && make install
(出错可下载expat-devel:yum install -y expat-devel)
[root@localhost ~]# cd /usr/local/src/httpd-2.4.46
[root@localhost httpd-2.4.46]# ./configure --prefix=/usr/local/apache2.4 --enable-so --with-pcre --with-included-apr --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork
注:1.–perefix指定安装目录
2.–nable-so表示启用DSO
[root@localhost src]# yum install -y pcre pcre-devel
//为避免make时出错提前安装库文件
[root@localhost src]# make && make install
4).安装成功:
[root@localhost apache2.4]# ls /usr/local/apache2.4/modules
[root@localhost apache2.4]# /usr/local/apache2.4/bin/apachectl -M
//查看配置文件有哪些文件
//share字样的动态共享模块,static以静态形式存在
3.安装PHP
PHP的官网网站:www.php.net
主流版本:5.6/7.1
1).下载源码包:php-5.6.30.tar
[root@localhost src]# ls
apr-1.6.5 httpd-2.4.46.tar.gz
apr-1.6.5.tar.gz mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
apr-util-1.6.1 php-5.6.30.tar.gz
apr-util-1.6.1.tar.gz php-7.1.6.tar.bz2
httpd-2.4.46
2).解压压缩包:
[root@localhost src]# tar -zxvf php-5.6.30.tar.gz
[root@localhost src]# yum install -y bzip2
//安装解压缩工具包
[root@localhost src]# tar -jxvf php-7.1.6.tar.bz2
3).安装和配置:
[root@localhost src]#yum install -y libxml2-devel openssl openssl -devel bzip2 bzip2-devel libpng libpng-devel freetype freetype-devel epel-release libmcrypt-devel
(建议逐个下载)
//为防止配置时出错提前安装库文件
[root@localhost src]# cd php-5.6.30
[root@localhost src]# ./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-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
[root@localhost src]# make && make install //编译安装
[root@localhost php-5.6.30]# cd /usr/local/src/php-5.6.30
[root@localhost php-5.6.30]# /usr/local/apache2.4/bin/httpd -M
//查看加载的模块
[root@localhost php-5.6.30]# cp php.ini-production /usr/local/php/etc/php.ini
安装php7:
[root@localhost src]# yum install -y libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel
(可以一起下载,但容易出错,建议逐个下载)
[root@localhost src]# cd php-7.1.6
[root@localhost src]# ./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php7/etc --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
[root@localhost src]# make && make install
[root@localhost php-7.1.6]# ls /usr/local/apache2.4/modules/libphp7.so
/usr/local/apache2.4/modules/libphp7.so
[root@localhost php-7.1.6]# cp php.ini-production /usr/local/php7/etc/php.ini
(4)httpd解析PHP
vi /usr/local/apache2.4/conf/httpd.conf //编辑httpd的主配置文件
编辑内容如下:
①、把ServerName www.example.com:80前的#去掉
②、
<Directory />
AllowOverride none
Require all denied
</Directory>
改成:
<Directory />
AllowOverride none
Require all granted
</Directory> //目的允许所有请求访问
③、AddType application/x-gzip .gz .tgz,在下面添加一行 AddType application/x-httpd-php .php
④
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
改成:
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
⑤、 LoadModule php5_module modules/libphp5.so注释掉,并改成
LoadModule php7_module modules/libphp7.so
测试安装:
①:测试配置文件是否正确
[root@lamp ~]# /usr/local/apache2.4/bin/apachectl -t
//检验配置文件是否正确
Syntax OK
启动httpd命令
/usr/local/apache2.4/bin/apachectl start
查看是否启动
[root@lamp conf]# cd /usr/local/apache2.4/conf
[root@lamp conf]# netstat -lnp |grep httpd
tcp6 0 0 :::80 ::😗 LISTEN 37176/httpd
[root@lamp conf]# curl localhost
<html><body><h1>It works!<h1><body><html>
//使用curl命令简单测试,显示了就是成功
测试是否正确解析PHP
[root@lamp conf]# vi /usr/local/apache2.4/htdocs/test.php
<?php
echo “php解析正确”
?>
[root@lamp conf]#curl localhost/1.php // php解析正确 //如显示此信息则PHP解析正确