我在Apache 2.4 / Debian上运行一个WordPress网站的服务器上inheritance了sysadminangular色。 它几乎可以工作,但它不时发出“500内部服务器错误”。 在我的error.log文件中,我看到: End of script output before headers: php5, referer: http://www.xxxxxxx.xxx/wp-admin/post-new.php 我认为服务器运行在全系统mod_fcgid,因为我有 /etc/apache2/conf-enabled/fcgid.conf 具有以下内容: <Location /> AddHandler fcgid-script .php Options +ExecCGI +FollowSymLinks FcgidWrapper /usr/bin/php-cgi .php </Location> <Files ~ (\.php)> AddHandler fcgid-script .php FCGIWrapper /usr/lib/cgi-bin/php5 .php Options ExecCGI FollowSymLinks allow from all </Files> 我发现其他问题, 这里和这里是关于我得到的同样的错误,并引用一些mod_fcgid错误configuration作为可能的原因(PHP_FCGI_CHILDREN和PHP_FCGI_MAX_REQUESTSvariables中的错误值)。 在这个论坛的回复也表明fcgidconfiguration错误,似乎给出了更多的细节问题(一个可能的瓶颈在接受的线程/连接数量),但它缺乏一步一步解释做什么。 我不是mod_fcgid专家。 你能帮我理解我应该为PHP_FCGI_CHILDREN和PHP_FCGI_MAX_REQUESTSvariables设置正确的值吗?
奇怪我的apache不会logging错误,因为我设法启用fcgid和suexec进行php处理。 即使简单的文件只有<? dwakdnawjkdn(); ?> <? dwakdnawjkdn(); ?> <? dwakdnawjkdn(); ?>不会产生任何错误,即使它们返回500错误。 我的configuration: fastcgi.logging设置为1 。 fcgid.conf: <IfModule mod_fcgid.c> DefaultMinClassProcessCount 0 IdleTimeout 300 IdleScanInterval 30 MaxProcessCount 15 MaxRequestsPerProcess 500 PHP_Fix_Pathinfo_Enable 1 </IfModule> 虚拟主机: <VirtualHost *:80> DocumentRoot "/var/www/mysite/web" ServerName mysite.tld ServerAlias mysite.tld SuexecUserGroup mysite mysite AddHandler fcgid-script .php <Directory "/var/www/mysite/web"> FCGIWrapper /var/www/mysite/cgi-bin/fcgi-conf <FilesMatch \.php$> SetHandler fcgid-script </FilesMatch> AllowOverride All […]
我在我的CGI脚本中有一个用于replace文本的代码(例如用'blue'代替'red') $STR_SEARCH='red' $STR_REPLACE='blue' 我在.htaccess使用下面的代码来启用replace函数:(RequestHeader unset Accept-Encoding) 这工作很好。 但是当我想使用gzip进行压缩时,gzip不起作用。 如果我禁用replace,gzip工作正常。 请帮我理解如何同时启用replace和gzip?
我阅读了一些关于为/ tmp和PHP会话目录使用tmpfs以获得更好性能的文章,这听起来很有趣。 我正在使用LAMP堆栈(+ FastCGI)的Centos 6服务器,在我的fcgid.conf中,我可以看到两个负责套接字文件的configuration: FcgidIPCDir / var / run / mod_fcgid FcgidProcessTableFile / var / run / mod_fcgid / fcgid_shm 我可以(也应该?)将这些目录移动到另一个位置,并将其放在tmpfs下? 我找不到任何有关它的文章,但对我来说这听起来很合理,毕竟它不应该持续下去。 编辑:我删除了另一个子问题。 谢谢 :)
这是我在这里的第一篇文章,虽然我经常在这里search和find答案。 这一次,我花了几天的时间search不同的网站,但不幸的是其他线程没有答案在我的情况帮助。 我pipe理几个LAMP服务器,每个服务器托pipe10到15个虚拟主机。 每个服务器都有一个控制面板供pipe理员和客户端pipe理站点。 在过去的几年里,在mod_php的Centos 6上运行得很好。 我现在正在升级控制面板,在安装了mod_fcgid的PHP的Centos 7上运行。 每个虚拟主机都有自己的apache conf文件,如下所示: <VirtualHost 136.243.195.117:80> DocumentRoot "/home/c7demose/public_html" ServerName c7.demoserver.co.za ServerAlias www.c7.demoserver.co.za mail.c7.demoserver.co.za ftp.c7.demoserver.co.za <IfModule mod_fcgid.c> SuexecUserGroup c7demose c7demose <Directory /home/c7demose/public_html> Options +ExecCGI AllowOverride All AddHandler fcgid-script .php FCGIWrapper /var/www/php-fcgi-scripts/c7.demoserver.co.za/php-fcgi-starter .php Order allow,deny Allow from all </Directory> </IfModule> </VirtualHost> 这没有问题,每个网站按预期工作。 过去的工作方式是控制面板侦听不同的端口,其虚拟主机configuration文件侦听任何IP地址,并且没有ServerNamevariables,因此用户使用哪个域名并不重要,如果他们使用正确的端口将redirect到控制面板。 换句话说,用户与域user_one.com可以去user_one.com:10025和用户2可以去他自己的user_two.com:10025,都进入控制面板: <VirtualHost *:10025> DocumentRoot "/var/www/html/webcp" <IfModule mod_fcgid.c> SuexecUserGroup […]
基于这里的答案,centos没有mod_fastcgi rpm,但是mod_fcgid可以用于大多数类似的目的。 https://stackoverflow.com/questions/12005137/centos-mod-fastcgi 所以我在centos7上用yum安装mod_fcgid,然后join LoadModule fastcgi_module modules/mod_fcgid.so 代替 LoadModule fastcgi_module modules/mod_fastcgi.so 进入httpd.conf 和/usr/lib64/httpd/modules/mod_fcgid.so确实存在。 然而,当运行service httpd start ,它说: Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details. 和 journalctl -xe Mar 17 17:19:15 open-kvm-app63 kill[31039]: kill: cannot find process "" Mar 17 17:19:15 open-kvm-app63 […]
我是Debian的用户,我正在学apache2.4的mod_fcgid。 我想用它来编写一个python脚本。 当我改变我的脚本,我不得不重新加载Apache。 我已经看到,mod_fastcgi有一个选项+自动更新,但不是在mod_fcgid。 我怎样才能做到这一点?
我试图得到一个Django + mod_fcgid设置工作(mod_wsgi是棘手的,因为我有一个静态链接的Python。不要问)。虽然这是在我的Mac OS X开发框上微不足道,让它在服务器上运行迄今为止,certificate是不可能的。 有了这个configuration LoadModule fcgid_module modules/mod_fcgid.so FCGIDSocketPath run/mod_fcgid FCGIDSharememPath run/mod_fcgid/fcgid_shm ScriptAliasMatch /apps/([^/]+)(/.*)? /var/www/apps/$1/apache/dispatch.fcgi$2 <DirectoryMatch ^/var/www/apps/([^/]+)/apache> SetHandler fcgid-script Order allow,deny Allow from all Options +ExecCGI </DirectoryMatch> 和这个例子dispatch.fcgi : #!/usr/bin/python import sys sys.path.insert(0, '/var/www/lib/python2.5/site-packages/flup-1.0.2.egg') def myapp(environ, start_response): start_response('200 OK', [('Content-Type', 'text/plain')]) return ['This is my hello world test!\n'] if __name__ == '__main__': from flup.server.fcgi […]
我有一台Virtualmin的CentOS服务器。 我已经使用Apache mod_fastcgi以我想要的方式configuration了PHP。 但是,当我在Virtualmin中点击“重新检查configuration”时, PHP execution via fcgid requires the Apache mod_fcgid module 这篇文章说改变Default PHP execution mode为CGI ,但我无法在任何地方find这样的选项!
我试图使用这里find的说明部署我的Pylons应用程序。 当我访问我的域的根时,这只是加载默认的Pylons页面。 当我尝试进入任何path时,我收到消息 Unhandled Exception An unhandled exception was thrown by the application. 当我查看我的应用程序和Apache错误日志的错误日志时,看起来Pylons总是试图将事情路由到错误控制器。 但是,请注意,上述消息不是我的错误控制器应该输出。 有什么build议要检查什么? 我喜欢用塔架开发,但这是我第一次尝试部署。 我已经尝试了多个不同的Web服务器上的多个configuration,我没有任何运气。 更新:下面是我的Pylons应用程序的configuration(剥离的意见,使其更短) [DEFAULT] smtp_server = localhost error_email_from = paste@localhost [server:main] use = egg:PasteScript#flup_fcgi_thread [app:main] use = egg:linkdb full_stack = true static_files = true cache_dir = %(here)s/data beaker.session.key = linkdb beaker.session.secret = b75f1813263ab9a082f67278daa26433 sqlalchemy.url = mysql://cclp:[email protected]/ccorl authkit.setup.enable = True […]