问题标签 [phpfarm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - apache centos上的多个php
如何同时在 Centos 6.5 上运行多个 php 版本?
就是这样。
要求
Centos 6.5(可能适用于 6.6 和 7)
Apache Apache/2.2.15(可能适用于其他版本)
本指南安装和使用
FASTCGI(替代安装请参阅注释)
PHPFARM
此安装是通过这种方式完成的,因此它与 iredmail 兼容。
您可以使用此设置在服务器上安装 iredmail。
步骤 1
安装 PHPFarm
对于您想要运行的每个版本的 php。但是,如果您想要自定义模块(例如 mysql 支持),请跳过此部分并查看其下方的部分。
如果您遇到编译错误,请重新启动并再次尝试./compile.sh 5.3.1 当我遇到此问题时,这对我有用
MYSQL & Module Support
Steps for getting MySQL support (and other modules) for custom phpfarm install of php version 5.5 .14. 这些说明适用于任何版本,只需将 5.5.14 重命名为 5.4.3 即可。您当然需要一个 mysql 服务器来连接以使用 php.ini 中的 mysql 模块。
这些步骤需要按此顺序完成
步骤 1A
确保您拥有这些路径并且日期时间正确我以 root 身份执行此操作。你应该有你打算使用的 date.timezone。
步骤 1B
确保您拥有这些路径并且日期时间正确
Step 1C
特别注意这一行
它需要根据您正在使用的版本进行调整。作为根
步骤 1D
现在以 root 身份编译。当你编译 5.5.14 或任何其他版本时,Phpfarm 将自动查找名为 custom-options-5.5.14.sh 的文件,当然还有各自的版本号。
稍后当您使用 phpinfo() 查看您的网页时;功能,您将在页面上看到对这些模块的支持以及不同的“配置命令”文本。
如果这些步骤未按顺序完成,您可能需要再次执行。为了再次执行此操作,首先从 src 文件夹和 inst 文件夹中删除文件。
rm 将删除文件夹,-rf 代表 r 递归和 f 强制。参考: http: //linuxcommand.org/lc3_man_pages/rm1.html
如果你有错误检查这个网站。还有其他的,但我发现这个很有用。
http://crybit.com/20-common-php-compilation-errors-and-fix-unix/
mysql 和模块支持的参考
第 2 步
将 phpfarm 添加到您的个人资料中
对于 root 和非 root 用户,将此添加到 .bashrc 的底部。.bashrc 文件可以在用户根文件夹或 cd ~/ 然后 ls -all 中找到,您应该会看到它。
将其添加到 root 和非 root 用户的 .bashrc 文件后,也可以在终端中执行此操作
现在退出终端并重新登录。试试这个命令
您应该能够在 diff php 版本之间来回切换
添加 CentOS/RHEL 6、64 位 (x86_64) 的存储库:
步骤 3
安装 yum
注意 此时如果您尝试运行 switch-phpfarm 5.5.11,它将无法正常工作,但没关系。我们仍然可以使用不同版本的 php 运行多个网站
第 4 步
确保您的 cgi-bin 已创建并已配置文件
如果 cgi-bin 还没有在这里创建它
对于您打算使用的每个 php 版本,请制作其中一个文件。用版本号替换结尾
步骤 5
在文件 php.fastcgi.5.5.11 中
第一行
告诉你巫婆 php.ini 使用它在 ubuntu 中是不同的。最后一行
还需要针对每个特定版本进行更改。我不确定它的作用,但我知道它需要改变。
步骤 6
启用 fastcgi 文件对 apache:apache 用户和组可执行
示例 1
示例 2
示例 3
步骤 7
编辑 httpd.conf 文件
这是 /etc/httpd/conf/httpd.conf 文件所需的内容。首先找到“NameVirtualHost *:80”并以此为起点。“#”表示该行已被注释掉。通过删除 # 取消注释此行。它现在应该是这样的。
这将允许多个虚拟主机通过每个虚拟主机引用中的“ServerName”在 Apache 上运行。我留下了一些评论来告诉你你可以做什么。确保 /etc/httpd/conf/httpd.conf 的底部看起来像这样。
第 8 步
在这里
编辑 etc/hosts 文件
是您在 etc/hosts 文件中所需要的。
第 9 步
现在重新启动您的服务器
第 10 步
测试
是否将 phpinfo() 添加到每个 index.php 站点,您会注意到所有 php 版本都会不同。最后一个 test4.net 也将使用 centos 的默认值。另请注意,test3.org 和 test4.net 不是 .com,但仍然可以使用。将来我计划为 phpfarm 文件制作指南,以便您可以安装 mysql 支持。这是我遇到的另一个问题。如果您发现其中的一些错误或难以使其工作,请发表评论,我会尽快处理。
php - PhpFarm 开关不工作
我刚刚安装了phpfarm并编译了一个 5.3.0 仅用于测试目的。到目前为止一切都很好。
尝试执行时,switch-phpfarm 5.3.0
我得到“ ln: failed to create symbolic link `/opt/phpfarm/inst/current-bin': Permission denied ”。
请注意,我已使用 phpfarm 目录中的 inst/current-bin 和 inst/bin 更新了我的 PATH。
我已经尝试使用 sudo(像任何其他新手一样)并且我得到了一个“sudo:switch-phpfarm:找不到命令”。
我做错了什么?
php - 添加 mysql 支持时,Phpfarm 从包含中删除 zlib
我有 phpfarm 编译 php 5.4.21 没有错误。但是当我尝试通过添加 custom-options-5.4.21.sh 来添加对 mysql 的支持时:
我最终以失败的编译结尾:
看起来 phpfarm 正在从链接库中删除 -lz,但错误来自 libz.so.1,这是否意味着它正在使用 zlib 库?
php - PHP 5.4.31 + Zend Guard 配置问题
我正在 Amazon Web Services 上配置 Ubuntu 14.04 Web 服务器。我安装了最新的 PHP5.5 作为基础,但我正在使用PHP Farm,以便我可以将 PHP5.4.31 用于需要 Zend Guard 的特定项目,该项目仅与最高 5.4.x 的 PHP 兼容。我将这些行添加到我的自定义 php.ini
所以,一切正常,但是当我编译 PHP 自定义构建时,我最终得到了这个:
现在可以看出,构建是相同的,唯一的区别是:
我从中了解到的是 PHP Zend Engine 正在调试模式下运行,但我似乎无法找到如何禁用调试模式以便可以激活扩展。
有任何想法吗?
php - 使用 PHP Farm 激活 php 扩展的问题
我正在实施一个软件(Getsy需要 PHP 5.4 和 ZendGuard 6 ( ZendGuard ) 的软件 ( Getsy。
在这种情况下,我使用的是 Ubuntu 14.04 的 AWS 实例。由于 Ubuntu 14.04 默认带有 PHP 5.5+,我需要安装 PHP 5.4。为此,我安装了 PHP Farm。
要更改站点之间的 PHP 版本,我有这个 cgi-bin 脚本:
对于我的特定站点(站点更改为 ****),我有以下配置/etc/apache2/sites-enabled/****.conf
:
所以,当我运行我的网站时phpinfo()
一切都很好,并且该网站使用 PHP 5.4.30 运行。
现在,我需要启用 ZendGuard Loader 扩展。我使用以下命令从这里下载 64 位 linux 版本:
因此,之后,为了安装 PHP 5.4.30,我创建了文件custom-options-5.4.sh
:
我还使用自定义 php ini 文件作为custom-php.ini
:
之后,为了编译 PHP 版本,我使用以下命令:
所以,紧接着我得到了所有的输出,并且正确安装了 php,但是当我检查 PHP 版本时,/opt/phpfarm/inst/bin/php-5.4.30 -v
我得到了这个输出:
由于某种原因,它没有加载 ZendGuard 扩展。当我检查phpinfo()
ZendGuard 时根本没有出现。当我检查线路在那里/opt/phpfarm/inst/php-5.4.30/lib/php.ini
。zend_extension="/usr/lib/php5/ZendGuardLoader.so"
任何想法为什么它不加载扩展或我如何启用它?
php - 使用 phpfarm 安装/卸载 php-5.2.17
我之前简单地安装了 php-5.2.17
我没有定义任何自定义选项。但后来我意识到它正在使用 cgi 并且我希望它使用 fastcgi 所以我创建了自定义文件
现在当我使用上面的命令编译时,它给出了
请注意,我已经按照在线教程修补了所有必要的东西。
我正在使用 Ubuntu 14.4
php - 使用加载器(ioncube 和 source Guardian)构建 PHP 时出现 PHPfarm 错误
我无法使用 phpfarm 配置 ioncube 或 source Guardian 加载器。我认为这是 php -v 中的“(DEBUG)”,但我不知道该怎么做。我需要帮助解决这个问题。
我的 php -v:
php - 使用 phpenv 在 ubuntu 上安装 php 5.3 时出错
我尝试使用 phpfarm 和 phpenv 安装 PHP 5.3,但我在 make 时不断收到以下错误。
collect2:错误:ld 返回 1 退出状态 make:*** [sapi/fpm/php-fpm] 错误 1
docker - 运行调试会话时 Xdebug 超时 (PhpFarm | phpFcgi)
我在 docker 容器内运行 apache Webserver。为了能够使用多个 php 版本,我在这个 docker-container 中使用了 phpfarm。
在我配置 xdebug 并将其连接到 phpstorm 之后,我想知道为什么调试会话总是以浏览器中的 500 错误结束。
在我请求网页后,超时时间接近 40 - 50 秒。
apache2 - 权限被拒绝:FastCGI:无法创建服务器
使用PHPFarm tuturial我尝试在 Debian GNU/Linux 6.0.9(挤压)上设置 PHP 版本 5.4.45。我按照这些步骤操作,然后在 apache2 错误日志文件的最后,我收到了这个错误:
[crit] (13)Permission denied: FastCGI: can't create server "/vagrant/httpdocs/cgi-bin/php-cgi-5.4.45": bind() failed [/var/lib/apache2/fastcgi/b56ecb9c2318fb1c45e816f6df92a48a]
我已经尝试了一些建议,但没有任何效果。任何的想法?