我目前正在学习如何使用 freebsd。最近我一直在尝试运行多个 php 版本以及它们各自的包。但是,我在进行安装时似乎遇到了问题。
我的默认位置php
安装/usr/local/etc/
,但是我希望能够安装php5.2
,php5.3
并php5.4
在/usr/local/etc/php52
,/usr/local/etc/php53
和/usr/local/etc/php54
分别。
使用端口,我只是通过执行cd /usr/ports/lang/php5x && make PREFIX="/usr/local/etc/php5x" install clean
.
现在的问题是:我如何对我所有的扩展做同样的事情PHP versions
?当我尝试像这样安装 php-extensions: 时cd /usr/ports/lang/php5x-extension && make PREFIX="/usr/local/etc/php5x/lib/php" install clean
,我收到此错误
...
===> PHPizing for php53-bcmath-5.3.17
env: /usr/local/bin/phpize: No such file or directory
*** Error code 127
Stop in /usr/ports/math/php53-bcmath.
*** Error code 1
Stop in /usr/ports/lang/php53-extensions.
Run Code Online (Sandbox Code Playgroud)
我的 PHPize 位于/usr/local/etc/php5x/bin/phpize
那么我如何获得make
或寻找phpize
正确的路径?是否有更清洁,可能更简单的维护多个 php 安装的方法?由于某些在 5.2 上运行并在 5.3 上中断的遗留代码的兼容性问题,我需要实现这一点。
谢谢你。
没有人提到的变量叫做 PHPBASE:它允许在 FreeBSD 服务器上使用多个 PHP 安装,将每个安装在它自己的目录中。然后在 make.conf 中使用它来将特定的 PHP 模块(php52-somethings 与 php54-somethings)指向正确的“基本”目录。
我已经看到它使用过几次,但到目前为止还不敢自己尝试。
当我为你寻找一个例子时,我现在实际上找到了一个明显更好的例子......
看这里:
http://webcodingstudio.com/blog/freebsd-92-server-configuration-apache-php-mysql-dns-samba
如果有人(仍然)想知道为什么要这样做:
关键是所谓的无缝升级。如果您需要为实际用户运行服务器,而不仅仅是在您自己的地下室中,您可以这样做。如果您为用户提供快速升级路径并且能够在版本之间来回切换,他们最终可以迁移。否则,它们最终也会迁移,而不是迁移到您提供给它们的 PHP 版本,而是迁移到不同的提供商。
归档时间: |
|
查看次数: |
5044 次 |
最近记录: |