你好,我用 Debian 9 安装安装了 apache。然后用 apt-get 安装了 php7.0,但我需要安装 php7.1,首先我
$ su
$ apt-get purge php7.0
所以我从下载http://php.net/downloads.phpphp 7.1.10 并使其
$ ./configure --with-mcrypt
$ make
$ make install
但phpinfo()
得到了php7.0,所以我做
$ su
$ apt-get purge php7.0
$ apt-get autoremove php7.0
并且phpinfo()
不工作。我推测现在 php 尚未安装。
然后从下载http://php.net/downloads.phpphp 7.1.11(今日新发布)及其内部
$ tar jxvf php-7.1.11.tar.bz2
$ apt-get install build-essential
$ apt-get install libxml2-dev libmcrypt-dev libjpeg-dev
$ cd php-7.1.11
$ ./configure --with-mcrypt --with-pdo-pgsql=/etc/postgresql/9.6/main --with-openssl=/usr/bin/openssl --with-zlib --with-apxs2=/usr/bin/apxs2
在所有检查之间我得到了以下错误
Configuring SAPI modules
checking for Apache 2.0 handler-module support via DSO through APXS... [Fri Oct 27 12:30:45.328686 2017] [core:warn] [pid 12056] AH00111: Config variable ${APACHE_RUN_DIR} is not defined
apache2: Syntax error on line 80 of /etc/apache2/apache2.conf: DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot
yes
configure: error: Cannot find OpenSSL's <evp.h>
这有什么问题?
答案1
apt-get 安装 libssl-dev
您必须安装 openssl 开发文件才能编译 php
https://packages.debian.org/stretch/libssl-dev
另外,一旦您成功编译 php,请不要忘记将 apache 模块更改为 php.so 的正确目录
在 apache 配置中必须有一行查找行 LoadModule php7_module modules/libphp7.so