下载打包好的文件
查看Centos版本
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
链接:https://download.csdn.net/download/code_pupil/10963295
放到路径/usr/local/src
cd目录
cd /usr/local/src/
解压下载的压缩包
安装apache
安装依赖: zlib-devel pcre-devel pcre apr apr-util
yum install zlib-devel pcre-devel pcre
yum -y install gcc gcc-c++ make automake
解压apr压缩包,进入目录配置编译安装
tar -zxvf apr-1.5.2.tar.gz
cd apr-1.5.2
./configure --prefix=/usr/local/apr/
make && make install
编译安装apr 1.5.2 时报 rm: cannot remove `libtoolT': No such file or directory
解决办法
(1):编辑 configure文件,查找 $RM "$cfgfile" 这个地方,用#注释掉
解压apr-util压缩包,进入目录配置编译安装
cd /usr/local/src/
tar -zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/
make && make install
解压apache压缩包,进入目录配置编译安装
cd /usr/local/src/
tar -zxvf httpd-2.4.28.tar.gz
cd httpd-2.4.28
./configure \
--prefix=/usr/local/apache/ \
--with-apr=/usr/local/apr/ \
--with-apr-util=/usr/local/apr-util/ \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--enable-static-support
make && make install
等安装个完以后进入到安装目录,开启apache服务
cd /usr/local/apache/bin/
./apachectl start
启动报错:httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
解决办法
vi /usr/local/apache/conf/httpd.conf
(1):增加 ServerName localhost
重新启动
[root@localhost bin]# ./apachectl start
httpd (pid 38347) already running
打开80端口并重启
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
设置开机自启动
cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
执行 chkconfig --add httpd 目的是想新增所制定的系统服务 但是会出现以下警告:
[root@localhost bin]# chkconfig --add httpd
service httpd does not support chkconfig
这里说的是httpd服务不支持chkconfig , 添加支持: vi /etc/init.d/httpd 在 #!/bin/sh 下添加这两句:
#chkconfig:345 85 15
#description:Start and stop the Apache HTTP Server 最终结果为:
vi /etc/init.d/httpd
chkconfig --add httpd
安装mysql
安装依赖:
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
解压cmake压缩包,进入目录配置编译安装
cd /usr/local/src/
tar -zxvf cmake-2.8.10.2.tar.gz
cd cmake-2.8.10.2
./bootstrap
gmake
gmake install
建立mysql的用户和
groupadd mysql
useradd -g mysql mysql -s /usr/sbin/nologin
mkdir /usr/local/mysql
mkdir /usr/local/mysql/data
解压mysql压缩包,进入目录配置编译安装
cd /usr/local/src/
tar -zxvf mysql-5.6.28.tar.gz
cd mysql-5.6.28
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql && make && make install
cd /usr/local/mysql/
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chown -R mysql:mysql /usr/local/mysql
编辑配置文件
vi /usr/local/mysql/my.cnf
加上以下内容
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid
user = mysql
tmpdir = /tmp
lower_case_table_names=1
Linux系统 vi /etc/my.cnf 注释log-error、pid-file 两行
vi /etc/my.cnf
[mysqld]
#datadir=/var/lib/mysql
[mysqld_safe]
#log-error=/var/log/mariadb/mariadb.log
#pid-file=/var/run/mariadb/mariadb.pid
并加上以下内容
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid
user = mysql
tmpdir = /tmp
vi /usr/local/mysql/my.cnf
注释:
#datadir=/var/lib/mysql
加上以下内容
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid
user = mysql
tmpdir = /tmp
使用下列命令把mysql添加为系统服务。
cd /usr/local/mysql/support-files/
cp ./mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld start
chkconfig --add mysqld
service mysqld start
[root@localhost /]# mysql -u root
-bash: mysql: command not found
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:
ln -s /usr/local/mysql/bin/mysql /usr/bin
[root@localhost /]# mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
查找mysql.sock文件
[root@localhost /]# find / -name mysql.sock
/var/lib/mysql/mysql.sock
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
设置root用户的远程访问权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
SET PASSWORD FOR 'root'@'%' = PASSWORD('123456');
安装PHP
安装依赖:php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd jpegsrc libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel
yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd jpegsrc libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel
解压php压缩包,进入目录配置编译安装
cd /usr/local/src/
tar -zxvf php-7.2.3.tar.gz
cd php-7.2.3
./configure --prefix=/usr/local/php/ --with-apxs2=/usr/local/apache/bin/apxs --enable-mbstring --with-curl --with-gd --enable-fpm --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-config-file-path=/usr/local/php/etc/ --with-mysqli=mysqlnd --with-mysql-sock=/var/lib/mysql/mysql.sock--with-mysql-sock=/var/lib/mysql/mysql.sock
make && make install
cp php.ini-development /usr/local/php/etc/php.ini
编辑apache配置文件
vi /usr/local/apache/conf/httpd.conf
设置环境变量
ln -s /usr/local/php/bin/php /usr/bin/php
加入以下内容
Addtype application/x-httpd-php .php .phtml
/usr/local/apache/bin/apachectl restart