headerComment2

typo3项目中遇到需要在baseurl之前输出内容的情况,写了一个插件实现.

用法: TS中配置

config.headerComment2 = <!– abcdefg –>

下载

1 Comment more...

Fastcgi自启动

fastcgi自启动可以在init.d里copy一份nginx改名为php-cgi, 改写关键部分后运行rcconf设置为自启动即可.

#! /bin/sh
### BEGIN INIT INFO
# Provides:          spawn-fcgi
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the nginx web server
# Description:       starts nginx using start-stop-daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/spawn-fcgi
DAEMON_OPTS=”-a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php-cgi”
NAME=fastcgi
DESC=fastcgi
test -x $DAEMON || exit 0
set -e
. /lib/lsb/init-functions
test_nginx_config() {
if nginx -t $DAEMON_OPTS
then
return 0
else
return $?
fi
}
case “$1” in
start)
echo -n “Starting $DESC: “
start-stop-daemon –start –quiet –pidfile /var/run/$NAME.pid \
–exec $DAEMON — $DAEMON_OPTS || true
echo “$NAME.”
;;
stop)
echo -n “Stopping $DESC: “
pkill -9 php-cgi
echo “$NAME.”
;;
restart|force-reload)
echo -n “Restarting $DESC: “
start-stop-daemon –stop –quiet –pidfile \
/var/run/$NAME.pid –exec $DAEMON || true
sleep 1
start-stop-daemon –start –quiet –pidfile \
/var/run/$NAME.pid –exec $DAEMON — $DAEMON_OPTS || true
echo “$NAME.”
;;
reload)
echo -n “Reloading $DESC configuration: “
start-stop-daemon –stop –signal HUP –quiet –pidfile /var/run/$NAME.pid \
–exec $DAEMON || true
echo “$NAME.”
;;
configtest)
echo -n “Testing $DESC configuration: “
if test_nginx_config
then
echo “$NAME.”
else
exit $?
fi
;;
status)
status_of_proc -p /var/run/$NAME.pid “$DAEMON” nginx && exit 0 || exit $?
;;
*)
echo “Usage: $NAME {start|stop|restart|reload|force-reload|status|configtest}” >&2
exit 1
;;
esac
exit 0

#! /bin/sh
### BEGIN INIT INFO# Provides:          spawn-fcgi # Required-Start:    $local_fs $remote_fs $network $syslog# Required-Stop:     $local_fs $remote_fs $network $syslog# Default-Start:     2 3 4 5# Default-Stop:      0 1 6# Short-Description: starts the nginx web server# Description:       starts nginx using start-stop-daemon### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/binDAEMON=/usr/bin/spawn-fcgiDAEMON_OPTS=”-a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php-cgi”NAME=fastcgi DESC=fastcgi
test -x $DAEMON || exit 0
set -e
. /lib/lsb/init-functions
test_nginx_config() {  if nginx -t $DAEMON_OPTS  then    return 0  else    return $?  fi}
case “$1” in  start) echo -n “Starting $DESC: ” start-stop-daemon –start –quiet –pidfile /var/run/$NAME.pid \ –exec $DAEMON — $DAEMON_OPTS || true echo “$NAME.” ;;  stop) echo -n “Stopping $DESC: ”        pkill -9 php-cgi echo “$NAME.” ;;  restart|force-reload) echo -n “Restarting $DESC: ” start-stop-daemon –stop –quiet –pidfile \ /var/run/$NAME.pid –exec $DAEMON || true sleep 1 start-stop-daemon –start –quiet –pidfile \ /var/run/$NAME.pid –exec $DAEMON — $DAEMON_OPTS || true echo “$NAME.” ;;  reload)        echo -n “Reloading $DESC configuration: ”        start-stop-daemon –stop –signal HUP –quiet –pidfile /var/run/$NAME.pid \            –exec $DAEMON || true        echo “$NAME.”        ;;  configtest)        echo -n “Testing $DESC configuration: ”        if test_nginx_config        then          echo “$NAME.”        else          exit $?        fi        ;;  status) status_of_proc -p /var/run/$NAME.pid “$DAEMON” nginx && exit 0 || exit $? ;;  *) echo “Usage: $NAME {start|stop|restart|reload|force-reload|status|configtest}” >&2 exit 1 ;;esac
exit 0


[精]Linux 上配置 Nginx + PHP5 FastCGI

Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,以事件驱动的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理、负载平衡。其拥有匹配Lighttpd的性能,同时还没有Lighttpd的内存泄漏问题,而且Lighttpd的mod_proxy也有一些问题并且很久没有更新。

因此我打算用其替代Apache应用于Linux服务器上。但是Nginx并不支持cgi方式运行,原因是可以减少因此带来的一些程序上的漏洞。那么我们必须使用FastCGI方式来执行PHP程序。 (continue reading…)

[精]Linux 上配置 Nginx + PHP5 FastCGI已关闭评论 more...

魔兽世界正史

魔兽正史

作者:暴雪
目录
魔兽正史目录
第一章:神话
– 10,000年前
泰坦及宇宙的形成
萨格拉斯的背叛
古老的神和艾泽拉斯的秩序
众龙的职责
苏醒中的世界,永恒之泉
– 10,000年
远古之战
世界的决裂
圣山海加尔和伊利丹的礼物
– 9,000年
世界之树和翠绿的梦
– 7,300年
被放逐的高等精灵
哨兵和守夜者
第二章:新世界
– 6,800年
奎尔萨拉斯的建立
– 2,800年
阿瑞沙和巨魔战争
– 2,700年
特瑞斯福的守护者
– 2,500年
铁炉堡——矮人们的觉醒
– 1,200年
七个王国
– 823年
艾格文和猎龙
– 230年
三锤之战
– 45年
最后的守护者
第三章:德拉诺的毁灭
基尔加丹和暗影契约
部落的崛起
第四章:联盟与部落
0年
魔兽争霸 I : 人兽大战 [Warcraft: Orcs & Humans]
黑暗之门与暴风城的陨落
6年
魔兽争霸 II : 黑潮 [Warcraft 2: Tides of Darkness]
洛丹伦联盟
8年
魔兽争霸II 资料片 : 暗黑之门 [Warcraft 2X: Beyond the Dark Portal]
入侵君诺
巫妖王的诞生
冰冠冰川与冰封王座
格瑞姆巴托战役
兽人的没落
部落的重生
蜘蛛战争
凯尔苏扎德和不死疫军的形成
联盟的分裂
10年
– 巨龙之日 (Richard A. Knaak)
18年
– 氏族之王 Christie Golden)
19年
– 血与荣耀 (Chris Metzen)
第五章:燃烧军团回归
20年
魔兽争霸 III:混乱之治 [Warcraft 3: Reign of Chaos]
洛丹伦的灾难
太阳之井—奎欧沙拉斯的沦陷
阿克蒙德的归来和前往卡利姆多的旅程
圣山海加尔之战
21年
魔兽争霸 III 资料片 : 冰封王座 [Warcraft 3X: The Frozen Throne]
背叛者的宿命
血精灵的崛起
瘟疫之地内战
巫妖王胜利
古老的仇恨:卡利姆多的殖民
第六章:即将推出…
25年魔兽世界 [World of Warcraft] 开始
1 Comment more...

TYPO3 multi language & multi domain site with RealURL and language menu

This is a step-by-step tutorial which describes in detail how to setup TYPO3 for a multilingual website with “domain language switching”. It will describe how to properly configure RealURL, extend it’s configuration with simple PHP statements in the RealURL configuration file and last but not least, probably the most important thing: the language switch menu with cross domain support.

I started with a clean TYPO3 installation and created two page trees in order to test the setup in a multiple page tree setup. Therefore I defined that on my local Linux box typo3-ml.local listens to the default language, while typo3-ml-en.local and typo3-ml-it.local – you guessed it – listens to the english and italian language versions of the page tree. (continue reading…)

1 Comment more...

SQL 高性能查询优化语句

保证在实现功能的基础上,尽量减少对数据库的访问次数;通过搜索参数,尽量减少对表的访问行数,最小化结果集,从而减轻网络负担;能够分开的操作尽量分开处理,提高每次的响应速度;在数据窗口使用SQL时,尽量把使用的索引放在选择的首列;算法的结构尽量简单;在查询时,不要过多地使用通配符如 SELECT * FROM T1语句,要用到几列就选择几列如:SELECT COL1,COL2 FROM T1;在可能的情况下尽量限制尽量结果集行数如:SELECT TOP 300 COL1,COL2,COL3 FROM T1,因为某些情况下用户是不需要那么多的数据的。 (continue reading…)


PHP5中static和const

Php代码 
  1. <?php
  2. class Counter
  3. {
  4. private static $count = 0;//定义一个静态属性 (continue reading…)

typo3插件互相调用方法

/*
* displayContact
*@param type: agency or customers
*@param data: data uid
*@param pageid: contact page id
*/
protected function displayContact($type, $data, $pageid) {
// Get default configuration
$conf = $GLOBALS[‘TSFE’]->tmpl->setup[‘plugin.’][‘tx_demodata_pi4.’];
// Modify this configuration
$conf += array(‘type’ => $type,’data’ => $data,’pageid’ => $pageid);
// Get page
$cObj = t3lib_div::makeInstance(‘tslib_cObj’);
/* @var $cObj tslib_cObj */
$cObj->start(array(), ”);
return $cObj->cObjGetSingle(‘USER’, $conf);
}

1 Comment more...

php格式化数字

number_format();

sprintf(“%04d”, 2) (continue reading…)


PHP 过滤器(Filter)

PHP 过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入。

什么是 PHP 过滤器?

PHP 过滤器用于验证和过滤来自非安全来源的数据。

验证和过滤用户输入或自定义数据是任何 Web 应用程序的重要组成部分。

设计 PHP 的过滤器扩展的目的是使数据过滤更轻松快捷。 (continue reading…)


Copyright © 1996-2010 Add Lives. All rights reserved.
iDream theme by Templates Next | Powered by WordPress