引用
首先:一台机器作为应用服务器(suse),一台作为web服务器(gentoo)。在suse上配置fastcgi+ php,然后在gentoo上配置lighttpd。
各个应用程序的编译安装就不说了,假定用户已经在两台机器上安装好了应用程序:web服务器上需要安装Lighttpd,应用程序服务器上需要安装lighttpd和php。为什么也需要安装lighttpd,是因为我们要是用他的spawn-fcgi程序(lighttpd web服务器用不到)。
这里详细说一下如何配置使gentoo上服务器使用suse上的fastcgi应用。
首先
配置suse,也就是应用服务器:
将Lighttpd安装文件中的doc目录下的spawn-fcgi.sh拷贝到/etc/init.d/目录中,修改某些路径:
SPAWNFCGI="/usr/sbin/spawn-fcgi" #//修改成自己机器中spawn-fcgi的路径
FCGIPROGRAM="/usr/local/php/bin/php-cgi" #//修改成本地php-cgi程序的路径
FCGI_WEB_SERVER_ADDRS="127.0.0.1,172.30.9.2" #//修改成web服务器的ip地址
USERID=wwwrun
GROUPID=www #//,修改成本地启动fastcgi的用户名和组
其他部分不需要修改即可执行,但是这个脚本只提供了启动的功能,不像使用/etc/init.d中的其他服务一样方便(提供start,stop,restart等参数),于是进行修改,最后结果:
#!/bin/bash
## ABSOLUTE path to the spawn-fcgi binary
SPAWNFCGI="/usr/sbin/spawn-fcgi"
## ABSOLUTE path to the PHP binary
FCGIPROGRAM="/usr/local/php/bin/php-cgi"
## TCP port to which to bind on localhost
FCGIPORT="1026"
## number of PHP children to spawn
PHP_FCGI_CHILDREN=10
## maximum number of requests a single PHP process can serve before it is restarted
PHP_FCGI_MAX_REQUESTS=1000
## IP addresses from which PHP should access server connections
FCGI_WEB_SERVER_ADDRS="127.0.0.1,172.30.9.2"
# allowed environment variables, separated by spaces
ALLOWED_ENV="ORACLE_HOME PATH USER"
## if this script is run as root, switch to the following user
USERID=wwwrun
GROUPID=www
################## no config below this line
case "$1" in
start)
if test x$PHP_FCGI_CHILDREN = x; then
PHP_FCGI_CHILDREN=5
fi
export PHP_FCGI_MAX_REQUESTS
export FCGI_WEB_SERVER_ADDRS
ALLOWED_ENV="$ALLOWED_ENV PHP_FCGI_MAX_REQUESTS FCGI_WEB_SERVER_ADDRS"
if test x$UID = x0; then
EX="$SPAWNFCGI -p $FCGIPORT -f $FCGIPROGRAM -u $USERID -g $GROUPID -C $PHP_FCGI_CHILDREN"
else
EX="$SPAWNFCGI -p $FCGIPORT -f $FCGIPROGRAM -C $PHP_FCGI_CHILDREN"
fi
# copy the allowed environment variables
E=
for i in $ALLOWED_ENV; do
E="$E $i=${!i}"
done
# clean the environment and set up a new one
env - $E $EX
echo "spawning success"
;;
stop)
killall -9 "php-cgi"
echo "spawn stoped"
;;
restart)
$0 stop
$0 start
echo "spawn restarted"
;;
*)
echo "Useage: " $0 " (start|stop|restart|help)"
;;
esac
exit 0
配置成功,/etc/init.d/spawn-fcgi.sh start启动
然后
开始配置web服务器,编辑lighttpd的配置文件夹中的conf.d/mod_fastcgi.conf文件
添加如下:
fastcgi.server = (".php" => ("suse" => (
"host" => "172.30.206.81",
"port" => 1026,
"docroot" => "/srv/www/htdocs/fcgi"
)));
这里的docroot是应用服务器上php文件存放的路径。
注意:一定不要忘了在lighttpd配置目录中的modules.conf中将mod_fastcgi.conf前面的注释去掉,否则fastcgi不可用
然后启动lighttpd
这个时候在你应用服务器的/srv/www/htdocs/fcgi中写一个helloword的php程序(比如叫hello.php),然后在另一台机器上进行测试,访问web服务器:http://web服务器地址/hello.php,应用服务器中hello.php的结果会显示出来。
有一点疑惑是,不知道在应用服务器上的php-cgi从哪里加载配置文件,于是我:
在应用服务器上写一个phpinfo的php程序,显示php的信息,在“Configuration File (php.ini) Path”这一列看到他的值为:/usr/local/php/lib,而Loaded Configuration File 的值为(none),可知他没有找到php配置文件,用的是系统默认的。于是从/etc/中将php的配置文件拷贝到这里来,进行一些必要的配置,比如将cgi.fix_pathinfo 设为 1,还有修改必要的路径等。
然后重启spawn-fcgi,再次访问phpinfo.php,这回就可以看到配置文件已经加载了。
分享到:
相关推荐
Linux系统上配置Nginx与PHP5(FastCGI)组合,是一种常见的高性能Web服务架构,尤其适用于处理动态内容。Nginx是一款轻量级的HTTP服务器,以其事件驱动的高效能和出色的反向代理及负载均衡能力而闻名。与Lighttpd...
这里我们关注的是"lighttpd+mysql+php"的集成安装,特别适用于轻量级服务器需求,例如开发或测试环境。这个压缩包文件集合包含了在CentOS7系统上成功安装和测试的所有组件,包括lighttpd(一个轻量级HTTP服务器)、...
这些组件协同工作,使得动态内容得以在Web上高效地呈现。下面将详细阐述这些技术及其在Windows环境中的配置。 首先,lighttpd是一款轻量级的HTTP服务器,因其高效和低资源消耗而受到青睐。它支持多种特性,包括URL...
在本文中,我们将深入探讨如何在Ubuntu操作系统上配置Lighttpd服务器与Webpy框架的集成,利用FastCGI技术实现高效动态网页服务。首先,确保已经安装了必要的组件,包括Lighttpd服务器、Webpy框架以及FastCGI支持。 ...
以下是对"lighttpd+php in android"这个主题的详细说明。 **Lighttpd** Lighttpd是一款开源、快速、低内存占用的HTTP服务器,特别适合资源有限的设备,如Android手机或平板电脑。它的设计目标是提供高效的服务,...
phpLight 2014 是网上首套LightTPD+PHP集成包,集成最新Lighttpd+PHP+MySQL+SQL-Front+Zend Guard Loader+XCache。纯绿色,安装后无需再配置。支持系统服务和非服务两种启动方式,自由切换。一次性安装无需再安装,...
首先,Apache、Nginx和LightTPD是三种流行的Web服务器软件。Apache是最广泛使用的开源HTTP服务器,具有丰富的模块和广泛的社区支持。Nginx以其高性能和低内存占用著称,尤其适合高并发场景。LightTPD则是一款轻量级...
【搭建lighttpd+cgi的代码包】 在Web服务器领域,lighttpd是一个轻量级且高效的HTTP服务器,因其低内存占用和高速度而受到欢迎。CGI(Common Gateway Interface)则是一种标准,允许Web服务器执行外部程序并返回...
本教程旨在指导读者在Openwrt系统中架设Lighttpd+PhP5+MYSQL环境,实现Web服务器搭建。以下是相关知识点的详细解释: 一、硬件准备 * 路由器:需要一台路由器,内存至少64M,推荐128M以上。 * 优盘:需要一个优盘...
phpLight 2013 是网上首套LightTPD+PHP集成包, 集成最新Lighttpd+PHP+MySQL+SQL-Front+Zend Guard Loader+XCache。 纯绿色,安装后无需再配置。支持系统服务和非服务两种启动方式,自由切换。 一次性安装无需再安装...
该程序包集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。该程序绿色小巧简易迷你仅有35M,有专门的控制面板。...
在安卓中创建 lighttpd+mysql+php的服务器_almp7.zip
在Linux上安装Lighttpd,里面有遇到的一些问题的解决方法,整个安装流程,还有参考网站
在veket 上安装 php mysql 环境,随身的 php 服务器,php 5.2 + mysql 5.1。 veket 5.27 + veket 5.30测试通过,其他自测 直接双击 pet 包安装 安装后 shell 执行 "/etc/init.d/mysql start" 启动数据库 "/etc/...
server.document-root = "/home/caoft/lighttpd/lighttpd_websocket_fastcgi/http_server/web_http" server.upload-dirs = ( "/home/caoft/lighttpd/lighttpd_websocket_fastcgi/http_server/upload" ) 2.运行build....
在安装并解压提供的"lighttpd"压缩包后,你需要根据自己的Rails应用配置修改模板中的参数。这可能涉及到修改Rails应用的根路径、设置环境变量(如RAILS_ENV)以及调整FastCGI进程的数量以适应你的服务器资源。 同时...
Varnish和Lighttpd是两个非常重要的开源Web服务器软件,它们在Web性能优化和负载均衡方面发挥着关键作用。Varnish作为一个高性能的HTTP缓存代理,常用于减轻后端服务器的压力,提高网站响应速度;而Lighttpd则是一款...
如何在ubuntu上实现lighttpd 1、下载mongoose使用mongoose中的example中的websocket_chat,实现websocket 2、websocket_chat源码下载路径 官网:https://cesanta.com 论坛:...
### SUSE Linux 下安装 PHP5 和 Lighttpd 的详细步骤 在 SUSE Linux 系统中安装 PHP5 和 Lighttpd 需要遵循一系列具体的步骤。本文将详细介绍这一过程中的关键步骤和技术要点,帮助读者顺利完成安装配置。 #### 1....