首页 后端开发 php教程 最详细的linux安装php过程

最详细的linux安装php过程

Mar 08, 2018 am 10:04 AM
linux php 过程

本文主要和大家分享最详细的linux安装php过程,之前写好了nginx的安装配置,后面就是php的安装和mysql的安装,不过时间有限,而且放一篇里也太长,所以都是分开来写,php安装完毕后就是mysql的配置了。

一:检查是否安装了php

1)yum安装检查:yum list installed |grep php

2)rpm安装检查:rpm -qa |grep php

3)自己编译安装的有多种方式查询,例如查找php的执行程序,或者检查进程ps -ef |grep php等方法。

二:检查如果没有安装php,即可准备php安装前的前置软件,用yum install xxxx即可安装,当然不嫌麻烦也可以自己编译安装,这里就不详细说了。

1)zlib以及zlib-devel  zlib提供数据压缩的函数库,也是nginx的前置软件,由于zlib需要编译php的zlib扩展,而编译中会需要使用zlib.h这个头文件,头文件在zlib-devel中,因此也需要下载zlib-devel。

2)libxml2以及libxml-devel libxml2是一个c语言的xml程序库,可以简单的对xml进行各种操作,并且支持xpath查询,以及部分支持xslt转换等功能。

3)libxslt以及libxslt-devel 如果不安装libxslt-devel会提示找不到xslt.config文件,xslt是转换xml到其他格式的扩展。


3)openssl以及openssl-devel 安全套接字层密码库

4)jpeg IJG的jpeg库,php的gd库所需。

5)libpng 是c语言写的比较底层的读写png文件的跨平台的库,可以帮助轻松的读写png文件的每一行像素,php的gd库所需。

6)freetype以及freetype-devel 免费开源的且可移植的字体引擎,提供统一的接口访问多种字体格式,这两个都是gd库的依赖软件,所以如果没有安装,或者版本太低,在安装php时设定的是安装gd库则会报错,另外不安装-devel也是会报错的,因为编译扩展的时候会缺少ft2build.h文件,报错如下图。


7)gd gd是php处理图形的扩展库

8)curl,由于我的yum里的版本太低了,所以直接自己编译安装的,安装方式很简单,也就是wget curl下载地址后tar解压,新建/usr/local/curl文件夹,然后进入curl解压后的文件夹里配置./configure --prefix=/usr/local/curl即可,最后make以及make install就安装好了。

注意:xxx-devel是xxx软件的开发包,包含头文件以及静态库甚至源码。

三:php下载安装

1)用wget下载php的tar.gz文件:wget http://br2.php.net/get/php-7.2.2.tar.gz

2)解压tar.gz文件:tar zxvf php-7.2.2.tar.gz

3)新建待会要安装php的文件夹:mkdir /usr/local/php,然后进入解压后的php安装包文件夹里,配置configure:

./configure --prefix=/usr/local/php  --with-curl=/usr/local/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-pdo-sqlite  --with-pear  --with-png-dir  --with-xmlrpc  --with-xsl  --with-zlib  --enable-fpm  --enable-bcmath  --enable-libxml  --enable-inline-optimization  --enable-mbregex  --enable-mbstring  --enable-opcache  --enable-pcntl  --enable-shmop  --enable-soap  --enable-sockets  --enable-sysvsem  --enable-xml  --enable-zip

注意:

--prefix=安装目录

--with-使用包名称[=包目录]

--enable-需要激活的功能

四:配置php相关文件

1)配置php.ini,这是php的配置文件:cp /home/myload/php-7.2.2/php.ini-development    /usr/local/php/lib/php.ini

2)配置php-fpm.conf,这是php-fpm配置文件:cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

3)配置www.conf,配置用户的文件:cp etc/php-fpm.d/www.conf.default  etc/php-fpm.d/www.conf

4)将php-fpm启动文件复制到init.d文件夹中一份方便启动php:cp -R sbin/php-fpm /etc/init.d/php-fpm

五:启动php,确定是否安装成功

执行命令/etc/init.d/php-fpm即可

查看是否启动:ps -ef |grep php既可以看到php启动了哪些进程

六:安装成功后配置nginx支持php

1)更改php.ini文件,vim /usr/local/php/lib/php.ini

通过查找cgi.fix_pathinfo=1这个配置,并去除注释,并改为cgi.fix_pathinfo=0,这里并不属于nginx支持php配置相关,而是专属于nginx下php的一个安全漏洞,如果这里值为1,用户方可以通过上传图片来上传木马,然后通过url访问该图片地址,并在地址后加入/xxx.php将该图片作为php文件运行,这是只有在nginx里才会存在的问题,apache和iis都没有该问题

以上问题可以直接参看鸟哥的博客,写的相当详细:http://www.laruence.com/2010/05/20/1495.html

2)配置web专用的组和用户

添加www用户组:groupadd www

添加www用户组下的用户www:useradd -g www www

3)更改php-fpm.conf配置

将user=nobody的注释去掉,并将nobody改成上面配置的www用户

将group=nobody的注释去掉,并将nobody改成上面配置的www用户组

最后检查php-fpm.conf最后的include的值是不是正确的www.conf目录地址,如果不正确则换成正确的目录地址。

4)更改www.conf配置

将user=nobody的注释去掉,并将nobody改成上面配置的www用户

将group=nobody的注释去掉,并将nobody改成上面配置的www用户组

5)更改nginx.conf文件 /etc/local/nginx/conf/nginx.conf

将#user=nobody去掉注释并改为user=www

去除 location ~ \.php${...}这段代码的注释,并将fastcgi_param里的/scripts改为$document_root


最后将location / {...}里默认index后面添加上index.php,确保index.php作为默认的首页


6)重启php-fpm和nginx,可以killall php-fpm然后再/etc/init.d/php-pfm即可重启,/usr/local/nginx/sbin/nginx -s stop即可停止nginx,然后执行/usr/local/nginx/sbin/php即可重启。

7)在html目录里随便创建一个php文件,内容是phpinfo();,然后在浏览器中访问该文件地址,看是否得到正确的php相关信息,如果正确显示则配置成功。

七:配合apache支持php,这个后续再添加,to be continue...

相关推荐:

Linux安装php报错记录

linux安装php 模块--with-mysql --with-mysqli非得需要安装mysql吗

linux安装php与memcache过程记录

以上是最详细的linux安装php过程的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

PHP:服务器端脚本语言的简介 PHP:服务器端脚本语言的简介 Apr 16, 2025 am 12:18 AM

PHP是一种服务器端脚本语言,用于动态网页开发和服务器端应用程序。1.PHP是一种解释型语言,无需编译,适合快速开发。2.PHP代码嵌入HTML中,易于网页开发。3.PHP处理服务器端逻辑,生成HTML输出,支持用户交互和数据处理。4.PHP可与数据库交互,处理表单提交,执行服务器端任务。

PHP和Python:解释了不同的范例 PHP和Python:解释了不同的范例 Apr 18, 2025 am 12:26 AM

PHP主要是过程式编程,但也支持面向对象编程(OOP);Python支持多种范式,包括OOP、函数式和过程式编程。PHP适合web开发,Python适用于多种应用,如数据分析和机器学习。

vscode需要什么电脑配置 vscode需要什么电脑配置 Apr 15, 2025 pm 09:48 PM

VS Code 系统要求:操作系统:Windows 10 及以上、macOS 10.12 及以上、Linux 发行版处理器:最低 1.6 GHz,推荐 2.0 GHz 及以上内存:最低 512 MB,推荐 4 GB 及以上存储空间:最低 250 MB,推荐 1 GB 及以上其他要求:稳定网络连接,Xorg/Wayland(Linux)

在PHP和Python之间进行选择:指南 在PHP和Python之间进行选择:指南 Apr 18, 2025 am 12:24 AM

PHP适合网页开发和快速原型开发,Python适用于数据科学和机器学习。1.PHP用于动态网页开发,语法简单,适合快速开发。2.Python语法简洁,适用于多领域,库生态系统强大。

PHP与Python:用例和应用程序 PHP与Python:用例和应用程序 Apr 17, 2025 am 12:23 AM

PHP适用于Web开发和内容管理系统,Python适合数据科学、机器学习和自动化脚本。1.PHP在构建快速、可扩展的网站和应用程序方面表现出色,常用于WordPress等CMS。2.Python在数据科学和机器学习领域表现卓越,拥有丰富的库如NumPy和TensorFlow。

为什么要使用PHP?解释的优点和好处 为什么要使用PHP?解释的优点和好处 Apr 16, 2025 am 12:16 AM

PHP的核心优势包括易于学习、强大的web开发支持、丰富的库和框架、高性能和可扩展性、跨平台兼容性以及成本效益高。1)易于学习和使用,适合初学者;2)与web服务器集成好,支持多种数据库;3)拥有如Laravel等强大框架;4)通过优化可实现高性能;5)支持多种操作系统;6)开源,降低开发成本。

PHP的影响:网络开发及以后 PHP的影响:网络开发及以后 Apr 18, 2025 am 12:10 AM

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

PHP和Python:深入了解他们的历史 PHP和Python:深入了解他们的历史 Apr 18, 2025 am 12:25 AM

PHP起源于1994年,由RasmusLerdorf开发,最初用于跟踪网站访问者,逐渐演变为服务器端脚本语言,广泛应用于网页开发。Python由GuidovanRossum于1980年代末开发,1991年首次发布,强调代码可读性和简洁性,适用于科学计算、数据分析等领域。

See all articles