Lighttpd 1.5 Fastcgi backends (PHP)


剛剛整理了一下資料,再修改了 Lighttpd 的設定..
改成了負載平衝?應該算吧..筆記一下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# lighttpd 1.5 Fastcgi backends (PHP)

# 先修改將 lighttpd 目錄下的 BIN 目錄內複製 spawn-php
# 這裡我自己複制了十份..按自己需要
cp spawn-php.sh spawn-php0.sh
cp spawn-php.sh spawn-php1.sh
cp spawn-php.sh spawn-php2.sh
cp spawn-php.sh spawn-php3.sh
cp spawn-php.sh spawn-php4.sh

# 再修改其內部的設定
# 這只修改一個,其他也同樣的修改
vi spawn-php0.sh

# 加入以下設定,因修改的是 spawn-php0.sh
FCGISOCKET="/tmp/php5-fastcgi0.socket"

# 找到下面的代碼
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

# 將他改為
if test x$UID = x0; then
EX="$SPAWNFCGI -s $FCGISOCKET -f $FCGIPROGRAM -u $USERID -g $GROUPID -C $PHP_FCGI_CHILDREN"
else
EX="$SPAWNFCGI -s $FCGISOCKET -f $FCGIPROGRAM -C $PHP_FCGI_CHILDREN"
fi

# 之後再到 lighttpd.conf 加入下面的資料
$PHYSICAL["existing-path"] =~ "\.php$" {
proxy-core.balancer = "round-robin"
proxy-core.allow-x-sendfile = "enable"
proxy-core.protocol = "fastcgi"
proxy-core.backends = (
"unix:/tmp/php5-fastcgi0.socket",
"unix:/tmp/php5-fastcgi1.socket",
"unix:/tmp/php5-fastcgi2.socket",
"unix:/tmp/php5-fastcgi3.socket",
"unix:/tmp/php5-fastcgi4.socket",
)
proxy-core.max-pool-size = 64
}

# 之後再到 /etc/rc.local 內加入, 使其可以在開機時產生 Socket
/usr/local/lighttpd/bin/spawn-php0.sh
/usr/local/lighttpd/bin/spawn-php1.sh
/usr/local/lighttpd/bin/spawn-php2.sh
/usr/local/lighttpd/bin/spawn-php3.sh
/usr/local/lighttpd/bin/spawn-php4.sh
/usr/local/lighttpd/sbin/lighttpd -f /usr/local/lighttpd/conf/lighttpd.conf