Articles of PHP的

PHP和mod_fcgid:ap_pass_brigade在handle_request_ipc函数中失败

这已经被问及在https://stackoverflow.com/a/12686252/219116之前回答,但是,解决scheme没有为我工作。 mod_fcgidconfiguration <IfModule mod_fcgid.c> AddHandler fcgid-script .fcgi FcgidIPCDir /var/run/mod_fcgid/ FcgidProcessTableFile /var/run/mod_fcgid/fcgid_shm FcgidIdleTimeout 60 FcgidProcessLifeTime 120 FcgidMaxRequestsPerProcess 500 FcgidMaxProcesses 150 FcgidMaxProcessesPerClass 144 FcgidMinProcessesPerClass 0 FcgidConnectTimeout 30 FcgidIOTimeout 600 FcgidIdleScanInterval 10 FcgidMaxRequestLen 269484032 </IfModule> php-cgi脚本 #!/bin/bassh export PHPRC=/var/www/vhosts/example.com/etc/ export PHP_FCGI_MAX_REQUESTS=5000 exec /usr/bin/php-cgi 系统细节 CentOS Linux版本7.1.1503(核心) 的httpd-2.4.6-31.el7.centos.x86_64 mod_fcgid-2.3.9-4.el7.x86_64 php56u-CLI-5.6.12-1.ius.centos7.x86_64 所以我的FcgidMaxRequestsPerProcess被设置为500,我的PHP_FCGI_MAX_REQUESTS被设置为10倍,正如在以前的答案和Apache文档中所build议的。 但我仍然得到这些错误 [Thu Nov 19 18:16:48.197238 2015] [fcgid:warn] [pid […]

(客户端)直接连接到Redis的JavaScript?

有没有办法使用客户端(而不是Node.js)直接连接到Redis的JavaScript? 我已经为几个项目成功地使用了Node.js + PHP + Redis + Socket.io(用于客户端)。 不过,我真的认为这可以进一步简化为像PHP + Redis +浏览器JavaScript的东西 – 取出Node.js服务器,这是另一个服务器,我宁愿不使用,如果没有必要的。 对于简单的事情,我认为使用Javascript直接连接到Redis会更好。 据我所知,Redis只是通过一个端口来提供请求,所以任何可以向这个端口提出请求的语言都可以工作。 从理论上讲,你不能只使用客户端JavaScript的Redis服务器的端口? 我最感兴趣的是发布/订阅function,可能或不可能。 我不确定您是否可以使用AJAX访问非端口80端口,但是您在技术上应该能够使用Nginx反向代理将某个Redis的端口转发到端口80。 有任何想法吗? 只是一个想法。 我对目前的解决scheme感到非常满意,但是如果我们能够做得更好或者更高效,我们也不会感到痛苦。

如何检查一个shell命令是否来自PHP

我需要在php中这样的东西: If (!command_exists('makemiracle')) { print 'no miracles'; return FALSE; } else { // safely call the command knowing that it exists in the host system shell_exec('makemiracle'); } 有没有解决办法?

MySQL已经死了,但子系统被locking

我在Linux(RHEL 5.0)上第一次使用PHP-mysql 当我尝试使用mysqli_connect从我的PHP脚本连接到MySQL时。 它显示以下错误: Can't connect to local MySQL server through socket '/var/mysql/mysql.sock'(2) 谷歌search了一小时后,我发现这个解决scheme如此处所述。 当我按照这个方法发出命令时: service mysqld status 作为root用户,我得到: mysql is dead but subsys locked任何一个知道如何解决这个问题,并导致这个错误? 也 重新启动 开始 并停止MySQL 输出为: FAILED 但是PHP工作正常。 我testing了phpinfo(); 演示。 我已经在/usr/local/mysql/bin安装了MySQL。 任何人都可以帮助我吗? 任何帮助表示赞赏。 提前致谢。

发送iPhone HTTP请求到Apache PHPnetworking服务器

我是一个游戏和3Dgraphics背景的程序员,现在我想刷新我的networking和Web开发技能。 我有一个任务,我想完成这样做。 我的想法是,我想能够发送一个HTTP请求或类似的东西,我的networking服务器,运行基于LAMP的设置。 我想知道我怎么可以发送一个HTTP请求,包含从我的iPhone使用Cocoa Touch框架的一些信息到我的networking服务器。 我希望Web服务器(使用PHP)能够将发送的信息logging到纯文本文件中,以后我可以使用它来生成图表。 对于我的例子,我们可以发送当前的date。 我认为人们必须经常这样做,我真的想知道如何做到这一点。 谢谢你的帮助。 PS如果你不知道Cocoa代码来发送请求,没关系,我确定我可以弄清楚,但我想至less知道如何让Linux服务器保存HTTP请求,最好是PHP,但另一种适当的语言是好的。 奖金标志为了安全地做到这一点。 另外:我是一个总noob在这个,需要源代码,欢呼声:D

在外部请求中启动Netbeans中的XDebug

我正在使用Netbeans 6.7和XDebug来debugging我的机器上的PHP站点,从Netbeans(Project-> Debug)启动请求。 这工作正常,是非常有用的。 我的问题是:是否有可能将debugging器附加到任何请求,而只是从Netbeans内部启动? 即不是单击“debugging”,而是将Netbeans置于debugging器启动的模式,并附加到下一个请求。 我有一种感觉,这可能是一个愚蠢的问题,但如果可能的话,这将是伟大的。 编辑:多一点信息 我的系统(Ubuntu 9.04)设置如下: /etc/php5/conf.d/xdebug.ini内容 zend_extension=/usr/lib/php5/20060613/xdebug.so xdebug.remote_enable=on xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_host=localhost xdebug.remote_port=9000 xdebug.idekey=netbeans-xdebug Netbeans PHPdebugging选项是默认的: Debugger Port: 9000 Session ID: netbeans-xdebug Stop at the First Line: ticked 我的/etc/hosts文件将www.mywebsite.comredirect到localhost 如果我点击Netbeans中的debuggingbutton,那么Firefox将以地址http://www.mywebsite.com?XDEBUG_SESSION_START=netbeans-xdebug启动,debugging器按预期工作。 但是,如果我只是浏览到http://www.mywebsite.com?XDEBUG_SESSION_START=netbeans-xdebug ,这不会启动NetBeans的debugging器。 我也尝试设置xdebug.remote_host=www.mywebsite.com ,但这没有什么区别。 另外,我已经启用了xdebug.remote_log ,并且显示了从netbeans内部启动时的信息,但是没有任何外部请求。 所以我不认为XDebug根本看不到外部请求。

MySQL:监视器查询

我想了解一个PHP – MySQL项目。 该项目相当复杂,所以逐行探索是不可能的。 我想要做的是,比较一个MySQL数据库的实例。 说, 1)MySQL正在运行。 这是数据库的实例号码。 2)用户从PHP前端login,然后注销。 3)这是数据库的实例二。 我需要以友好的方式查看实例1和实例2之间的变化。 任何有关开源工具或任何其他技术的build议?

PHP exec()返回值为后台进程(linux)

在Linux上使用PHP,我想确定是否成功执行使用exec()运行的shell命令。 我使用return_var参数来检查一个成功的返回值0.这工作正常,直到我需要做一个进程,必须在后台运行相同的事情。 例如,在以下命令中$ result返回0: exec('badcommand > /dev/null 2>&1 &', $output, $result); 我把redirect放在那里,我不想捕获任何输出。 我只是想知道命令已经成功执行了。 这可能吗? 谢谢,Brian

无法在远程服务器上包含文件

我的问题是,我不能在远程服务器上包含一个文件。 <?php echo "Including\n"; require_once("http://xx.xxx.xxx.xx:8080/path/to/myfile.inc"); echo "Done..\n"; ?> 该脚本在require_once函数中失败。 我正在运行的脚本:php -d allow_url_include =在script.php,但要确保我已经设置allow_url_include和allow_url_fopen开启在php.ini 如果我将http://xx.xxx.xxx.xx:8080 / path / to / myfile.inc复制到浏览器中,我将为该文件提供服务。 我也试图包括其他远程文件(在标准的端口80),但仍然没有运气 在那里我真的很困惑的是,一切工作从我的本地计算机在我的办公室(Mac,Ubuntu的),而不是从我们的服务器。 我已经在2个不同的服务器上进行了testing,虚拟和专用。 我可以用fopen()获取文件。

为什么codeIgniter显示在这个服务器上找不到请求的URL?

我想问一下。 首先,我会告诉我,我已经开发了一个应用程序使用codeIgniter我的Windows dekstop。 它完全清除并运行。 但是,在我把这个项目移到debian服务器之后,它说: The requested URL /index.php/Admin was not found on this server. 我想问,为什么我有这样的输出? 尽pipe我使用相同的代码运行了相同的项目。 我该如何解决这个问题? 谢谢…