问题标签 [mod-php]
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.
apache - 如何根据apache+php_cgi和apache+mod_php配置不同的虚拟主机?
大家。
我有一个带有 Apache + mod_php 站点(site1.local)的 Cent OS 6.6 服务器。我需要用 php_cgi 配置第二个站点(site2.local)。因此,我创建了一个用户,授予他对 www 文件夹的权限,将 site1 配置为 mod_php,创建了一个 phpinfo.php。另外,我安装了 php-cgi,并尝试配置虚拟主机,仅适用于第一个站点,在第二个站点上是错误的:
那是我的配置: cat /etc/httpd/conf/httpd.conf
我做错了什么,我该如何解决?
apache - 如何从 mod_php 收集 php 指标?
作为 Drupal Web 应用程序及其基础设施性能测试的一部分,我在所有硬件和中间件砖上安装了传感器,但我不知道如何从 mod_php 收集 php 指标(apache 和 mod_php 之间的响应时间,...)。
谢谢您的帮助
php - Mac homebrew apache 2.2 php5_module 分段错误
我一直在将我的 apache 实现从 Mac 的内置 apache 转移到使用 homebrew 安装的 apache。这进展顺利,但是当我去测试我的 PHP 驱动站点时,很明显 PHP 没有运行(apache 本身工作并提供 HTML,但 PHP 只是以纯文本形式存在于源代码中)。
我意识到我还没有在 apache 中启用 Homebrew 的 apache php5_module,所以我添加了:
LoadModule php5_module /usr/local/opt/php54/libexec/apache2/libphp5.so
到我的 httpd.conf 文件。我重新启动了 apache,然后事情变得非常有趣:
之后我的测试站点完全消失了,注释 php5_module 行带回 HTML 页面,但显然没有工作 PHP。有没有人知道这是怎么发生的,或者如何解决它?我看到了一些对 mod_perl 错误的引用,但我没有启用它。(我也不知道端口问题如何与此相关。)
此外,将 mod_php5 的路径更改为 libexec/apache2/libphp5.so 同样无效。
以下是一些技术细节:
Mac 操作系统版本:10.9.5
安装apache2.2:brew install -v httpd22 --with-brewed-openssl
PHP的安装:brew install -v php54 --homebrew-apxs --with-apache
apache加载的模块:
阿帕奇版本:
如果有什么有用的东西,我可以提供更多信息(我很感激有关如何找到该信息的说明,我的 Mac apache foo 不强......)谢谢大家!
更新:
存在的文件路径:
- /usr/local/opt/php54/libexec/apache2/libphp5.so
不存在的文件路径:
- /usr/local/opt/httpd22/libexec/mod_php54.so
- /usr/local/opt/httpd22/libexec/libphp5.so
apache2 - apache2和mod_php组合什么时候重启apache2
有人可以告诉我必须在 apache2 和 mod_php 设置中重新启动 apache2 的情况吗?我们是否需要为每个代码部署重新启动 apache2?
我是新来的,对何时重新启动 apache2 感到困惑。
php - 基于 apache 服务器 API 的条件 .htaccess
我在使用 .htaccess 时遇到了问题,特别是更改了 include_path 值。在我的开发服务器上,PHP 作为一个模块运行,所以我可以使用:
现在,当我迁移到真实服务器时,PHP 以 CGI/FastCGI 运行,所以我的最后一个技巧不起作用,所以我学会了艰难的方法并使用 apache 处理程序让它全部工作,因此它加载了一个自定义 php.ini包含路径更改:
现在问题来了。对于每种情况,我都需要一个编码块,因此如果作为 CGI/FastCGI 执行,则它使用处理程序,如果作为模块执行,则使用 php_value。
为 fastcgi 找到了这个,但没有成功。
如果在这两种情况下都有另一种方法来更改 include_path ,而不取决于 PHP 的执行方式,并且不将其硬编码到代码中,那将是非常重要的。
php - 在一台 Apache 服务器上的单独虚拟主机中运行 Apache mod_php 和 mod_fastcgi
所以,我需要在一台服务器上运行多个 php 应用程序/站点。一个或多个应该使用 apache 和 mod_php5 运行,一个或多个应该能够使用 mod_fastcgi 和 php-fpm 运行。mod_php5 目前很好,如果我禁用 mod_php5,fastcgi 可以工作,但我很难让它们同时工作。
我认为这可以在 apache 中使用 filesmatch、if.mod_fastcgi 和 if.mod_actions 的某种组合来实现,但我无法弄清楚它是什么。如果需要,我们可以安装执行此操作所需的任何 apache 模块。
如果 Apache 2.2 或更低版本的 vhost 有不同版本,并且您也有该片段,或者至少知道我应该做什么,那么超级奖励积分
我不会发布我拥有的所有虚拟主机,因为我知道它们是错误的,但是第一个默认的基于 mod_php 的虚拟主机看起来像这样......
理想情况下,我希望这些保持不变,如果我们需要更多这些,我们可以添加更多。
我想要的结果是能够使用类似于第一个配置的方式放入为 mod_php 配置的新虚拟主机,并且还可以放入如下所示的虚拟主机以实现快速 cgi。
如果您可以发布第二个虚拟主机,或者告诉我我做错了什么,非常感谢。
php - 使用 mod_php 覆盖在 Apache 上运行的 PHP 脚本中的 connect()
当通过 mod_php 启用 PHP 时,如何在 Apache 请求中覆盖从 PHP 脚本中调用的 connect() 系统调用?
我在custom-connect.c中定义了我的自定义 connect() 版本:
我编译它:
我有一个简单的脚本curl-test.php,它在内部调用了 connect():
当我从命令行使用 LD_PRELOAD 运行我的脚本时:
然后看起来不错,我可以看到我的自定义 connect() 将某些内容记录到/tmp/connect.log:
看起来它在命令行中工作正常。但是,当我从 Apache 运行脚本并通过 mod_php 启用 PHP 时,如何用我自己的版本覆盖 connect()?我还应该使用 LD_PRELOAD 吗?如果是,那么如何配置呢?
php - Detect support for php_value / php_flag in .htaccess to suppress errors - PHP CGI mode - mod_php
I use php_value
and php_flag
rules in .htaccess
such as:
But this causes an error when the server is running in CGI mode instead of Apache mode, and instead I have to use php.ini rules such as:
My code libraries needs to work for either mode, without manual changes for each server.
It took me a while to find a solution to allow both methods to be in place, and as it was hard to find I thought I'd post my solution here.
apache - Centos 6.7 为 Apache 安装 PHP 模块
我正在使用 vagrant build vm 并尝试安装 mod_php。
yum install mod_php ..... 错误:php70u-common 与 php-common-5.6.17-1.el6.remi.x86_64 冲突 错误:httpd24u 与 httpd-2.2.15-47.el6.centos.1.x86_64 冲突错误:httpd24u-tools 与 httpd-tools-2.2.15-47.el6.centos.1.x86_64 冲突
我猜他试图下载 php 7 的模块?如何为 php 5.6 安装它?
php - 没有 mod_php?14.04 / ondrej php5.6 + ondrej apache2
试图获得一个运行 PHP 5.6 的 14.04 机器,但在 apache 中启用 PHP 时遇到问题。具体来说,似乎不再安装 mod_php 了?
a2enmod
不列出php
or mod_php
,并locate php.ini
输出:
但是,在apache 提供<?php phpinfo();
的服务中包含 a 不会被处理。index.php
帮助表示赞赏!