首页 centos7.4下PHP环境的安装

centos7.4下PHP环境的安装

jaeheng 2020-07-27 03:12:55 0 178

本次安装的软件有:


  • PHP:7.0.33
  • MySQL: 5.6
  • Apache: 2.4
本次安装所用的系统为:CentOS Linux release 7.4.1708 (Core)


Apache安装

yum安装

[root@192 ~]# yum update
...
[root@192 ~]# yum install -y httpd httpd-devel

验证安装结果

运行完之后,可以验证一下:

[root@192 ~]# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built:   Aug  8 2019 11:41:18
root@[~]# apachectl status
* httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-07-16 20:40:11 CST; 1 weeks 3 days ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 22325 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
  Process: 389 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0/SUCCESS)
 Main PID: 22330 (/usr/sbin/httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
...
如果状态不是active , 则需要手动打开: apachectl start

至此Apache2.4安装完毕


注意事项

安装完毕之后,可以使用浏览器访问http://服务器ip,如果显示默认页面则表示安装成功,且已经可以访问

如果无法访问,则可能需要关闭selinux,或者查看防火墙是否允许访问80端口(iptables、firewall)


PHP安装

安装系统必要的软件

这些软件用于编译php源码,或供php扩展使用:

yum -y install gcc gcc-c++
yum -y install libxml2
yum -y install libxml2-devel
yum -y install openssl
yum -y install openssl-devel
yum -y install curl
yum -y install curl-devel
yum -y install libjpeg
yum -y install libjpeg-devel
yum -y install libpng
yum -y install libpng-devel
yum -y install freetype
yum -y install freetype-devel
yum -y install pcre
yum -y install pcre-devel
yum -y install libxslt
yum -y install libxslt-devel
yum -y install bzip2
yum -y install bzip2-devel

下载PHP源码

[root@192 ~]# curl -o php-7.0.33.tar.gz https://www.php.net/distributions/php-7.0.33.tar.gz
[root@192 ~]# tar -xvzf php-7.0.33.tar.gz
[root@192 ~]# cd php-7.0.33

编译安装php

[root@192 php-7.0.33]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/bin/apxs --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip
[root@192 php-7.0.33]# make & make install
安装完之后将php添加到环境变量中:
[root@192 php-7.0.33]# vi /etc/profile
在文件末尾添加
PATH=$PATH:/usr/local/php/bin
export PATH
然后使环境变量生效,并且验证php安装
[root@192 php-7.0.33]# source /etc/profile
[root@192 php-7.0.33]# php -v
PHP 7.0.33 (cli) (built: Sep 24 2019 11:35:27) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
至此,php安装完毕


配置Apache支持PHP

安装完php之后,Apache并不能支持php文件的解析,还需要配置一下:

先创建一个php的配置文件

[root@localhost php-7.0.33]# cp php.ini-development /usr/local/php/lib
[root@localhost php-7.0.33]# php --ini
Configuration File (php.ini) Path: /usr/local/php/lib
Loaded Configuration File:         /usr/local/php/lib/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)
修改Apache的配置文件httpd.conf
DirectoryIndex index.html index.php # 添加index.php
找到:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
添加如下内容
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php
检查php7_module是否加载上
LoadModule php7_module        /usr/lib64/httpd/modules/libphp7.so
编写测试文件index.php内容如下,放到Apache的默认的Web站点目录DocumentRoot #默认路径/var/www/html
<?php
phpinfo();
最后重启Apache
[root@localhost html]# apachectl restart
使用浏览器访问http://服务器ip测试,如果可以出现


点击查看原图

则说明Apache已经可以解析PHP文件。


MySQL安装

系统准备

下载MySQL5.6的rpm包

[root@localhost ~]# curl -o mysql-bundle.tar https://cdn.mysql.com//Downloads/MySQL-5.6/MySQL-5.6.49-1.el7.x86_64.rpm-bundle.tar
创建mysql用户组和用户
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd mysql

开始安装

# 检查mariadb-lib
[root@localhost ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.64-1.el7.x86_64
# 卸载mariadb-lib
[root@localhost ~]# rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps
# 将安装包解压到某个文件夹
[root@localhost ~]# mkdir mysql-bundle
[root@localhost ~]# tar -xvf mysql-bundle.tar -C ./mysql-bundle
[root@localhost ~]# cd mysql-bundle/
[root@localhost mysql-bundle]# ls -l
总用量 486M
-rw-r--r-- 1 root root  243M 6月   3 13:40 MySQL-5.6.49-1.el7.x86_64.rpm-bundle.tar
-rw-r--r-- 1 7155 31415  21M 6月   3 13:36 MySQL-client-5.6.49-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 3.4M 6月   3 13:36 MySQL-devel-5.6.49-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415  90M 6月   3 13:36 MySQL-embedded-5.6.49-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415  67M 6月   3 13:36 MySQL-server-5.6.49-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 2.3M 6月   3 13:36 MySQL-shared-5.6.49-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415 2.2M 6月   3 13:36 MySQL-shared-compat-5.6.49-1.el7.x86_64.rpm
-rw-r--r-- 1 7155 31415  58M 6月   3 13:36 MySQL-test-5.6.49-1.el7.x86_64.rpm
安装mysql-server需要以下依赖
  • net-tools
  • autoconf
[root@localhost mysql-bundle]# yum -y install net-tools autoconf
[root@localhost mysql-bundle]# rpm -ivh MySQL-server-5.6.49-1.el7.x86_64.rpm MySQL-client-5.6.49-1.el7.x86_64.rpm MySQL-devel-5.6.49-1.el7.x86_64.rpm
...
# 安装完之后查看root初始密码
[root@localhost mysql-bundle]# cat /root/.mysql_secret
# The random password set for the root user at Tue Sep 24 13:47:34 2019 (local time): 初始密码
初始安装后的MySQL各类文件位置如下:
  • 可执行文件在 /usr/bin/ 和 /usr/sbin/
  • 数据库文件在 /var/lib/mysql
  • 初始配置文件在 /usr/my.cnf

启动MySQL

[root@localhost mysql-bundle]# service mysql start
启动之后,我们需要修改默认密码,才能正常使用
[root@localhost mysql-bundle]# mysql -uroot -p
输入安装完后获得的初始密码
mysql> set password for root@localhost=password("新密码");
mysql> FLUSH PRIVILEGES;
至此,MySQL就安装完毕了


MySQL开启远程访问权限

登录mysql

[root@localhost ~]# mysql -uroot -p
输入密码登录:
创建远程连接用户并赋予权限
mysql> use mysql;
mysql> grant all privileges on *.* to 用户名@'%' identified by "密码";
mysql> flush privileges;