问题标签 [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.
php - PHP 不能使用 300MB 的 RAM
我正在尝试增加某些 PHP 脚本的允许内存。无论我做什么,例如:
...脚本总是在 300MB 左右耗尽内存:
我已经通过几种方式验证了memory_limit
实际上已经改变了。问题似乎是 PHP 无法物理分配总共 300 MB 的内存(25165824 字节 + 343810589 字节 = 352 MB)。
我已经在具有以下规格的两台不同的基于 Windows 的计算机上尝试了 PHP/5.3.0 和 PHP/5.3.9:
- Windows XP / Windows Server 2003(两台电脑都是 32 位机器,1GB 或 RAM)
- 官方 PHP 32 位 VC9 二进制文件
- 作为 Apache 2.2 模块运行(第三方 32 位 VC9 二进制文件)
我知道使用一半的物理 RAM 会强制交换并减慢速度,但我只需要确保脚本确实有效,以便可以将其部署到实时服务器。我还尝试了更大的值(产生了相同的错误)和更小的值(要么使我的脚本达到限制,要么使 Apache 崩溃)。
这个明显硬编码的内存限制的来源是什么?
更新 #1:我已经对 Windows Server 2003 机器(它实际上是一个 VMWare 虚拟机)进行了进一步的测试。我已经将“物理”RAM 增加到 2 GB,并且我已经验证页面文件允许增长到 1152 MB。任务管理器显示当前事务负载为 886 MB,并且有 1.5 GB 的可用物理内存。但是,我得到了完全相同的数字相同的错误。
更新#2:正如我所说,memory_limit
指令很好。它同时出现在ini_get()
和phpinfo()
中。您收到的错误消息与我的略有不同;我的表示 PHP崩溃。请比较:
我将尝试编写一个脚本来重现该问题并进行报告。
php - dso (mod_php) 和 FTP/文件权限
我在这里有点困惑。但这可能只是我缺乏经验。
我已经设置了 PHP DSO (mod_php),我的服务器运行平稳稳定。但问题是,为了运行包含所有内容的 php,我必须将所有用户帐户文件 (/home/*/public_html/*) 的所有者设置为 nobody:nobody。
这给我带来了两个问题: - 这真的有必要吗?我宁愿让他们 user:user - FTP 怎么样?如果我使用 FTP 上传文件,它们归 user:user 所有,因此它们不能包含在另一个 php 文件中(引发错误)。属于nobody的文件:nobody不能通过ftp修改..
仅供参考:我也启用了 SuEXEC。我应该禁用这个吗?
FYI2:我知道我可以将所有权限设置为 777,但这是错误的。
非常感谢!
php - Apache php 库缓存
如果我在 Apache 中运行一个“需要”sa php 文件的 php 脚本,有没有办法可以将它保存在内存中,这样就不需要每次都从磁盘中提取它?
php - 如何并行运行 mod_php 和 fastcgi?
mod_php
当您的 apache 服务器配置为作为 FastCGI 运行时,是否可以运行某些 PHP 脚本?(FPM/FastCGI)。这可以在目录级别进行配置,但我不确定在 apache 配置中使用什么语法。
服务器操作系统:Ubuntu-Server 11.04
security - VPS 上的 mod_php 和世界可写文件
我有一个 centos 5.8 VPS,它运行 mod_php 而不是我在共享主机上习惯的 fastcgi,我遇到了一个问题,即打算写入文件的各种 php 位需要这些文件是世界可写的。编写的文件就像网站的数据库和 rss xml。这不安全,是吗?我应该怎么做才能确保它的安全?
php - 在 FastCGI 上从 PHP 运行后台进程
我知道可以创建一个后台 PHP 进程,该进程可以从另一个 PHP 文件按需启动:
但是,此解决方案仅在 PHP 作为mod_php运行时才有效。
有什么方法可以在FastCGI上做同样的事情吗?
似乎在 FastCGI 上,该过程由 FastCGI 一次又一次地启动和关闭,有人有修复它的经验吗?
php - 空php文件的第一个字节值的长时间
几个月前我有这样的问题。现在为了隔离问题,我尝试了一种新方法。我把一个空文件放到我的服务器上。
文件名为“foobar.php”。其内容如下:
但是当我尝试进入example.com/foobar.php时,我得到 了
DNS 203 毫秒
连接 3.33 秒
发送 0 毫秒
到第一个字节的时间 17.35 秒
接收 1 毫秒 总加载时间 20.88 秒
然后我放了另一个名为“foobar.txt”的文件。其内容如下:
foobar.txt的加载时间约为 0.2 秒。
该网站位于共享主机内,因此我无法获得根 Linux 访问权限。我试图找出是什么让我的网站变慢了。
- 当我得到这些结果时,我的网站上有 60 位访问者。当它们处于活动状态时,它们会发送 AJAX 请求。当它们处于活动状态时,它们几乎每 3 秒发送一次 AJAX 请求。
- 通常我的网站每秒有 5-20 个请求。
- 我的托管服务提供商说没有发生 CPU 过载,通常非常低。
- 我向托管公司询问了 Apache 限制。我得到整个共享服务器的这个值:
MaxClients 300
MaxRequestsPerChild 4000
ThreadsPerChild 25
- example.com/mybigpage.php和example.com/foobar.php页面几乎同时打开。
- 如果页面有 txt、jpeg 或其他扩展名,它们会立即打开。如果扩展名是 php,则打开速度很慢。
- CakePHP 将会话文件存储在“/httpdocs/app/tmp/sessions”文件夹中。会话文件在创建两个小时后被删除。现在该文件夹中有 3653 个文件。最旧的文件是 2.5 小时前创建的。
- 在我的配置中,PHP 处理程序是 Apache 模块 mod_php
新编辑: 我和我的托管公司谈过了。并告诉他们“foobar.php”几乎在 20 秒内打开。尽管该文件根本没有代码。他们告诉我,他们将“foobar.php”放到我们使用同一服务器的其他网站上。我也试过“othersite.com/foobar.php”。它立即打开。但是“mysite.com/foobar.php”几乎在 15 秒内打开。什么会导致这种行为?我们在其他网站上使用相同的 PHP 配置,但它们会立即打开。可能是因为我的 .htaccess 规则吗?还是别的什么?
新Edit2: 我的提供商告诉我服务器内不存在“apd.so”文件。所以看起来我不能使用 APD。
我应该寻找什么来找到瓶颈?
什么会限制我的网站?
附加数据:从phpinfo,我得到这个:
'./configure' '--prefix=/usr/local/lsws/lsphp5' '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target= x86_64-redhat-linux-gnu' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir =/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '- -cache-file=../config.cache''--with-libdir=lib64'''--with-config-file-path=/etc''--with-config-file-scan-dir=/etc /php.dd' '--disable-debug' '--with-pic' '--disable-rpath' '--without-pear' '--with-bz2' '--with-curl' '-- with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv ' '--with-jpeg-dir=/usr' '--with-openssl' '--with-libexpat-dir=/usr/lib64' '--with-pcre-regex=/usr' '--with -zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' ' --enable-sysvshm' '--enable-sysvmsg' '--enable-wddx' '--with-kerberos' '--enable-ucd-snmp-hack' '--with-unixODBC=shared,/usr' '--enable-shmop' '--enable-calendar' '--with-libxml-dir=/usr' '--with-mysql' '--with-mysqli' '--with-gd' '--启用域''--disable-dba' '--without-unixODBC' '--enable-xmlreader' '--enable-xmlwriter' '--with-mcrypt' '--enable-mbstring' '--with-litespeed' '- -enable-soap' '--with-xsl' '--with-pdo-mysql' '--with-pdo-sqlite' '--enable-sqlite-utf8' '--with-pspell' '--with -sqlite=shared' '--with-xmlrpc' '--with-mhash' '--enable-pdo' '--with-imap' '--with-imap-ssl' '--without-suhosin' ' --with-tidy' '--enable-zip' '--enable-inline-optimization' '--enable-gd-native-ttf' '--enable-bcmath'--enable-soap' '--with-xsl' '--with-pdo-mysql' '--with-pdo-sqlite' '--enable-sqlite-utf8' '--with-pspell' '-- with-sqlite=shared' '--with-xmlrpc' '--with-mhash' '--enable-pdo' '--with-imap' '--with-imap-ssl' '--without-suhosin' '--with-tidy' '--enable-zip' '--enable-inline-optimization' '--enable-gd-native-ttf' '--enable-bcmath'--enable-soap' '--with-xsl' '--with-pdo-mysql' '--with-pdo-sqlite' '--enable-sqlite-utf8' '--with-pspell' '-- with-sqlite=shared' '--with-xmlrpc' '--with-mhash' '--enable-pdo' '--with-imap' '--with-imap-ssl' '--without-suhosin' '--with-tidy' '--enable-zip' '--enable-inline-optimization' '--enable-gd-native-ttf' '--enable-bcmath'--enable-inline-optimization''--enable-gd-native-ttf'''--enable-bcmath'--enable-inline-optimization''--enable-gd-native-ttf'''--enable-bcmath'
performance - PHP 处理速度 apache 2.4 mpm-prefork mod_php 5.4 vs nginx 1.2.x PHP-FPM 5.4
我一直在寻找几天来看看是否有人做了一个好的、有记录的、PHP 处理速度比较
- apache-mpm-prefork 2.4 和 mod_php 5.4
和
- nginx 1.2.x + PHP-FPM 5.4
为什么我在看:我看到的唯一测试是 abunt 基准测试,提供整页或类似 Hello, World 的测试,但没有关于测试内容的适当文档。我不关心请求/秒数、硬件,但我确实需要查看测试了哪些 PHP 脚本以及使用了哪些确切配置。
为什么这两个: mod_php 被认为是处理 PHP 最快的(没有静态文件,没有请求/响应测量,只处理 PHP 本身)但从那时起发生了很多变化,包括 apache 版本。Nginx 和 PHP-FPM 占用的内存要少得多,因此更改架构是一个很好的理由,但如果在这种情况下它们不够快,那么更改将是无关紧要的。
我知道如果我找不到一个我必须自己做,但我不敢相信到目前为止没有人做过这样的测试:)
macos - 让 mod_wsgi(reviewboard) 和 mod_php(wordpress) 在相同的服务器名但不同的路径上工作
我试图让我的 wordpress 网站和我的评论板网站在同一个域名下工作。
前任:
根据我的 httpd-vhosts.conf 文件,我可以让其中一个工作。但是,我不能让两者都工作(这是我需要你帮助的地方!)。
这就是我托管我的 wordpress 网站的方式:
这就是我托管我的评论板网站的方式(然后破坏了我的 wordpress 网站):
所以,现在我希望能够弄清楚如何以某种方式将这些组合起来,这样我就可以在上面指定的路径上托管评论板,而不会破坏我的 wordpress 网站。我尝试使用此处提到的 Alias 命令:http://stackoverflow.com/questions/1553165/multiple-django-sites-with-apache-mod-wsgi 和这里 https://code.google.com/p/modwsgi /wiki/配置指南
但是我无法让它工作。这是我的在制品。如果您可以非常具体地说明我需要做些什么来改变它,那么它会很好,因为我是这种东西的新手。谢谢!
php - 我可以为模块和 CGI 安装使用相同的 PHP 代码吗
一个简单而愚蠢的问题:
无论 PHP 是作为模块还是作为 cgi 二进制文件安装,我都可以使用完全相同的 PHP 代码吗?我知道这两种情况下的处理是不同的,但是 Apache 会完全为我处理它(前提是我在 httpd.conf 中进行了正确的设置)还是必须以某种方式反映在实际的 PHP 代码中?我可以将代码从 mod_php 解决方案移植到 cgi-bin 解决方案而不更改它吗?