CentOS7学习笔记--PHP环境安装

Lamp是开源软件php的最佳环境,下面是搭建apache2+php的日志。

测试机器环境:

VMware Workstation 10 虚拟机

内存:1G

Linux版本:CentOS MinimalCD 7-1804

一、yum安装

1、yum安装

		yum install httpd  #安装apache2
		yum install php –y  #安装php
		systemctl stop firewalld  #关闭防火墙,因为这种安装基本无法使用了,所以没有设置开放http
		systemctl start httpd   #启动www服务器

2、测试一下

在www主目录(/etc/httpd2/httpd.conf文件里的DocumentRoot "/var/www/html")下创建一个php文件包含以下内容

<?php

phpinfo();

?>

3、版本Apache/2.4.6 (CentOS) PHP/5.4.16

如果程序是php5.4以下的,yum安装显然是最好的,毕竟是厂方的优化设置。

二、yum安装,由于官方php是5.4,所以使用第三方的yum源

CentOS/RHEL 7.x:

yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

CentOS/RHEL 6.x:

yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

查询php的版本(5-7版本都有)

yum search php

安装5.6或其它版本

yum install php56w

包含Apache2.4.6

这种安装相对方便,但配置上……

三、yum安装Apache2后在按官方php的方式make安装

1、yum 安装 apache 后,必须安装依赖包 httpd-devel ,否则是不存在文件 apxs 的,而 apxs 的路径在编译 php 时需要配置

~]# yum install httpd -y
~]# yum install httpd-devel -y

2、打开防火墙

~]# firewall-cmd --permanent --add-service http
success

~]# firewall-cmd --reload
success

3、查看 apsx 所在路径

~]# rpm -ql httpd-devel|grep apxs
/usr/bin/apxs

/sur/share/man/man1/apxs.1.gz 

//此行为 grep 结果,不同系统的路径可能不同,以实际结果为准

4、安装必要工具

~]# yum install gcc -y

~]# yum install libxml2-devel -y

5、下载php的包,保存到/usr/src

~]# tar -xf php-5.6.40.tar.gz

6、编译php时,加入 apxs 路径参数,作用是促使生成 libphp5.so

~]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/bin/apxs --with-mysql

~]# make && make install

7、修改apache配置文件,Centos7.4 下的apache2.4的配置文件路径为

~]# vi /etc/httpd/conf/httpd.conf

//查看有没有下面这句话,如果没有在LoadModule后面添加:

LoadModule php5_module modules/libphp5.so 

//在DirectoryIndex后面添加:

index.php

//在AddType application/x-gzip .gz .tgz后面添加:

AddType application/x-httpd-php .php 

//不添加则访问.php文件将会变成下载,  .php前面有一个空格

8、启动httpd服务

~]#  systemctl start httpd

9、测试一下

在www主目录(/etc/httpd2/httpd.conf文件里的DocumentRoot "/var/www/html")下创建一个php文件包含以下内容

<?php

phpinfo();

?>

四、make安装Apache2+php(推荐)

查考https://www.php.net/manual/zh/install.unix.apache2.php

1、下载必要文件到保存到/usr/src

http://apr.apache.org/ 下载apr、apr-util

https://github.com/libexpat/libexpat/releases 下载expat

tar -xf apr-1.7.0.tar.gz

tar -xf apr-util-1.6.1.tar.gz

yum -y install bzip2

tar -xvjf expat-2.2.3.tar.bz2    #这个文件是解决util安装时报错用的

tar -xf httpd-2.4.39.tar.gz

tar -xf php-5.6.40.tar.gz

Systemd 入门教程

http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html

2、安装必要工具

yum install gcc -y

yum install perl -y

yum install libxml2-devel -y

yum install pcre-devel -y

3、首先编译apr

cd apr-1.7.0

vi configure

找到RM='$RM'这一行 修改为RM='$RM -f',修改完成后保存。

在命令模式下 /RM='$RM'可以快速找到

./configure --prefix=/usr/local/apr17

make && make install

cd ~

4、编译expat,apr-util必要软件

cd expat-2.2.3

./configure --prefix=/usr/local/expat23

make && make install

cd ~

5、编译apr-util

cd apr-util-1.6.1

./configure --with-apr=/usr/local/apr17/ --with-expat=/usr/local/expat23/ --prefix=/usr/local/apr16-util


make && make install

cd ~

6、编译httpd

cd httpd-2.4.39

./configure --prefix=/usr/local/httpd2 --sysconfdir=/etc/httpd2 --with-apr=/usr/local/apr17 --with-apr-util=/usr/local/apr16-util/   


#--prefix是apache2安装的位置,--sysconfdir是apache2配置的位置,记牢,下面用

make && make install

vi /etc/httpd2/httpd.conf 修改ServerName 127.0.0.1:80

OK Apache安装好了

7、打开防火墙

~]# firewall-cmd --permanent --add-service http
success

~]# firewall-cmd --reload
success

8、设置为开机自启,配置服务

在/usr/lib/systemd/system/目录下新建一个名为httpd.service的unit文件,其内容为:

[Unit]

Description=apache

[Service]

Type=simple

EnvironmentFile=/etc/httpd2/httpd.conf

ExecStart=/usr/local/httpd2/bin/apachectl -k start -DFOREGROUND

ExecReload=/usr/local/httpd2/bin/apachectl -k graceful

ExecStop=/bin/kill -WINCH ${MAINPID}

[Install]

WantedBy=multi-user.target

systemctl daemon-reload #重新装载

systemctl start httpd #启动httpd服务

设置开机自动启动httpd服务:

systemctl enable httpd

Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

9、编译php

cd php-5.6.40

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/httpd2/bin/apxs --with-mysql

make && make install

cp php.ini-development /usr/local/lib/php.ini

修改 vi /etc/httpd2/httpd.conf

添加 AddType application/x-httpd-php .php

在/etc/httpd/httpd.conf配置文件里检查LoadModule php5_module modules/libphp5.so 是否已经添加

在/usr/apache2/modules目录中查找libphp5.so文件是否存在

重启Apache /usr/local/httpd2/bin/apachectl -k restart

10、测试一下

在www主目录(/etc/httpd2/httpd.conf文件里的DocumentRoot "/usr/local/httpd2/htdocs")下创建一个php文件包含以下内容

<?php

phpinfo();

?>

OK到此php安装完毕

原文地址:https://www.cnblogs.com/ysztcn/p/10918322.html