- Apache
1、安装依赖包:
yum install apr-devel apr-util-devel pcre-devel make gcc-c++ openssl openssl-devel -y
2、下载httpd源码包
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.38.tar.gz
tar -zxvf httpd-2.4.38.tar.gz
cd httpd-2.4.38
3、编译安装
./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-ssl --with-ssl
make
make install
4、加入systemctl服务管理并设置开机启动
cd /etc/init.d/
vim httpd
#!/bin/bash
# chkconfig: 12345 80 90
function start_http()
{
/usr/local/apache/bin/apachectl start
}
function stop_http()
{
/usr/local/apache/bin/apachectl stop
}
case "$1" in
start)
start_http
;;
stop)
stop_http
;;
restart)
stop_http
start_http
;;
*)
echo "Usage : start | stop | restart"
;;
esac
chmod a+x httpd
systemctl daemon-reload
chkconfig --add httpd
systemctl start httpd
#浏览器访问:IP地址
- MySQL
1、安装依赖包
yum install -y cmake gcc-c++ bison-devel ncurses-devel ncurses
2、下载MySQL源码包
wget http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.7/mysql-5.7.25.tar.gz
tar -zxvf mysql-5.7.25.tar.gz
cd mysql-5.7.25
3、编译安装
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DWITH_XTRADB_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DWITH_EXTRA_CHARSETS=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_BIG_TABLES=1 -DWITH_DEBUG=0 -DWITH_MEMORY_STORAGE_ENGINE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost/
make
make install
4、配置文件my.cnf
vim /etc/my.cnf
[client]
port = 3306
socket = /usr/local/mysql57/mysql.sock
[mysqld]
datadir=/data/mysql
basedir=/usr/local/mysql57
socket=/usr/local/mysql57/mysql.sock
5、创建MySQL用户、数据存放路径
useradd -s /sbin/nologin mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
chown -R mysql:mysql /usr/local/mysql57/
6、加入systemctl服务管理并设置开机启动
cp /usr/local/mysql57/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 35 mysqld on
ln -s /usr/local/mysql57/bin/* /usr/bin/
mysqld --initialize --user=mysql --basedir=/usr/local/mysql57/ --datadir=/data/mysql/ #此处会生成出事密码
systemctl start mysqld
systemctl status mysqld
#生成的初始密码
7、修改或重置MySQL密码
方式一、修改初始密码
mysql -uroot -pY/p+j<=p=2lW #上图初始密码
alter user 'root'@'localhost' identified by '123456';
方式二、如没有看到初始密码,则采用以下方式:
#增加skip-grant-tables
vim /etc/my.cnf
[client]
port = 3306
socket = /usr/local/mysql57/mysql.sock
[mysqld]
datadir=/data/mysql
basedir=/usr/local/mysql57
socket=/usr/local/mysql57/mysql.sock
skip-grant-tables
#重置密码
systemctl restart mysql
mysql -uroot -p #回车
use mysql;
flush privileges;
set password for root@localhost='123456';
flush privileges;
exit;
#测试结果
systemctl restart mysql
mysql -uroot -p123456
#删除添加的skip-grant-tables,删除后重新启动
- PHP
1、安装依赖包
yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers autoconf
2、编译安装
wget http://mirrors.sohu.com/php/php-7.2.9.tar.gz
tar -zxvf php-7.2.9.tar.gz
cd php-7.2.9
./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache/bin/apxs --with-mysql-sock=/usr/local/mysql57/mysql.sock --enable-mbstring --with-curl --with-gd --with-pdo-mysql --enable-mbstring --enable-ftp --with-jpeg-dir --with-png-dir --with-mysqli --with-pear --enable-sockets --with-freetype-dir --with-libxml-dir --with-xmlrpc --enable-zip --enable-fpm --enable-xml --with-zlib --with-iconv --enable-zip --with-freetype-dir --enable-soap --enable-pcntl --enable-cli --with-curl
#./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache/bin/apxs --with-mysql-sock=/usr/local/mysql57/mysql.sock --enable-mbstring --with-curl --with-gd --with-pdo-mysql
make
make install
3、配置文件php.ini(php源码./php-7.2.9/php.ini-production)
cp /root/php-7.2.9/php.ini-production /usr/local/php7/lib/php.ini
4、Apache + PHP源码整合
vim /usr/local/apache/conf/httpd.conf
LoadModule php7_module modules/libphp7.so #一般自动生成
DirectoryIndex index.php index.html index.htm
<FilesMatch \.php$> #最后面加上
SetHandler application/x-httpd-php
</FilesMatch>
5、测试Apache + PHP环境
vim /usr/local/apache/htdocs/index.php
<?php
phpinfo();
?>
systemctl restart httpd
#浏览器访问:IP地址
6、PHP7安装pdo_mysql扩展
cd /root/php-7.2.9/ext/pdo_mysql/ #php源码包路径
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config --with-pdo-mysql=/usr/local/mysql57/
make
make install
vim /usr/local/php7/lib/php.ini
extension=pdo_mysql.so #最下面增加
systemctl restart httpd
7、PHP7安装mysqli扩展
cd /root/php-7.2.9/ext/mysqli #php源码包路径
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config --with-mysql=mysqlnd
make
make install
vim /usr/local/php7/lib/php.ini
extension=mysqli.so #最下面增加
systemctl restart httpd