【安装PHP】如何在openSUSE42.1下编译安装PHP7,opensuse42.1php7_PHP教程
【安装PHP】如何在openSUSE42.1下编译安装PHP7,opensuse42.1php7
首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog。
里面说到是否会去使用PHP7,就个人而言,我是毫不犹豫地使用的,但是生产环境就不是我说了算,所以只能自己在自己的开发环境里更新PHP的版本。那么,你呢?
笔者使用的是Linux的openSUSE42.1发行版,Yast里面还没有PHP7的安装包,于是乎只能自己手动编译安装了。作为一个PHP开发者,我是非常希望能够学会编译安装PHP7的,之前试过几次,但是每次安装都要上网找各种资料,于是乎,这次安装成功后就想把自己的安装过程以及遇到的问题记录下来,方便以后查阅和分享给需要的人。
下载源码并解压
进入正题,要编译安装PHP7,首先当然要下载PHP7的源码。你可以到github上clone,也可以到PHP官网下载。下载后解压到 /usr/local/src 目录,并将目录重命名为php7。进入目录。
配置编译参数
生成配置文件
./buildconf
配置
./<span>configure \ </span>--prefix=/usr/local/<span>php7 \ </span>--exec-prefix=/usr/local/<span>php7 \ </span>--bindir=/usr/local/php7/<span>bin \ </span>--sbindir=/usr/local/php7/<span>sbin \ </span>--includedir=/usr/local/php7/<span>include \ </span>--libdir=/usr/local/php7/lib/<span>php \ </span>--mandir=/usr/local/php7/php/<span>man</span><span> \ </span>--with-config-<span>file</span>-path=/usr/local/php7/<span>etc \ </span>--with-mysql-sock=/var/run/mysql/<span>mysql.sock \ </span>--with-mcrypt=/usr/<span>include \ </span>--with-<span>mhash \ </span>--with-<span>openssl \ </span>--with-mysqli=<span>shared,mysqlnd \ </span>--with-pdo-mysql=<span>shared,mysqlnd \ </span>--with-<span>gd \ </span>--with-<span>iconv \ </span>--with-<span>zlib \ </span>--enable-<span>zip</span><span> \ </span>--enable-inline-<span>optimization \ </span>--disable-<span>debug \ </span>--disable-<span>rpath \ </span>--enable-<span>shared \ </span>--enable-<span>xml \ </span>--enable-<span>bcmath \ </span>--enable-<span>shmop \ </span>--enable-<span>sysvsem \ </span>--enable-<span>mbregex \ </span>--enable-<span>mbstring \ </span>--enable-<span>ftp</span><span> \ </span>--enable-gd-native-<span>ttf \ </span>--enable-<span>pcntl \ </span>--enable-<span>sockets \ </span>--with-<span>xmlrpc \ </span>--enable-<span>soap \ </span>--without-<span>pear \ </span>--with-<span>gettext \ </span>--enable-<span>session \ </span>--with-<span>curl \ </span>--with-jpeg-<span>dir</span><span> \ </span>--with-freetype-<span>dir</span><span> \ </span>--enable-<span>opcache \ </span>--enable-<span>fpm \ </span>--disable-<span>cgi \ </span>--with-fpm-user=<span>nginx \ </span>--with-fpm-group=<span>nginx \ </span>--without-<span>gdbm \ </span>--disable-fileinfo
参数说明
<p>prefix PHP7安装的根目录</p> <p><em id="__mceDel">with-config-file-path PHP7的配置文件目录</em></p>
执行完上面的配置命令后的结果如下图所示:
执行上面命令的过程中会遇到一些依赖缺少的提示,下面列出我遇到的依赖问题:
错误:
configure: error: xml2-config not found. Please check your libxml2 installation.
解决:
zypper <span>install</span> libxml2-devel
错误:
configure: WARNING: unrecognized options: --with-mysql
解决:
取消这个选项,这个选项是不存在的
错误:
configure: error: jpeglib.h not found.
解决:
zypper <span>install</span> libjpeg-devel
错误:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决:
zypper <span>install</span> libmcrypt-devel
错误:
checking <span>for</span><span> recode support... yes configure: error: Can not </span><span>find</span> recode.h anywhere under /usr /usr/local /usr /opt.
解决:
zypper <span>install</span> librecode-devel
总的来说,在配置的时候遇到没有的就打开Yast搜一下,如果有的话就安装,然后重新编译看还需要那些,如果在Yast找不到,那就上网找一下Google。
编译和安装PHP7
<span>make</span> && <span>make</span> <span>install</span>
<p>其中,make之后可以选择make test。只是一个可选步骤,不执行不知道有什么问题,不过笔者暂时还没遇到。</p>
查看安装成功后的PHP7目录
编译安装成功后,查看PHP7的安装目录`ls /usr/local/php7`:
设置PHP7的配置文件
<span>cp</span> /usr/local/src/php7/php.ini-production /usr/local/php7/etc/<span>php.ini </span><span>cp</span> /usr/local/src/sapi/fpm/init.d.php-fpm /etc/init.d/php-<span>fpm </span><span>cp</span> /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-<span>fpm.conf </span><span>cp</span> /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
设置环境变量
在/etc/profile 文件的最后一行加上
export PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATH
然后执行 source /etc/profile
设置PHP日志目录和php-fpm进程文件(php-fpm.sock)目录
<span>mkdir</span> -p /var/log/php-fpm/ && <span>mkdir</span> -p /var/run/php-fpm && cd /var/run/ && <span>chown</span> -R nginx:nginx php-fpm
将PHP设置为开机启动
<span>chmod</span> +x /etc/init.d/php-<span>fpm chkconfig php</span>-fpm on
<p>可以用chkconfig命令查看开机启动服务列表。</p>
启动PHP服务
service php-fpm start
通过ps aux | grep 'php'查看PHP是否启动成功
至此,PHP7就安装成功了,你也开始使用PHP7吧!

热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

在Docker环境中使用PECL安装扩展时报错的原因及解决方法在使用Docker环境时,我们常常会遇到一些令人头疼的问�...

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。
