April 22, 2010
PHP生成内置图片Word文档的方法(一)
"一般,有2种方法可以导出doc文档,一种是 使用com,并且作为php的一个扩展库安装到服务器上,然后创建一个com,调用它的方法。安装过office的服务器可以调用一个叫 word.application的com,可以生成word文档,不过这种方式我不推荐,因为执行效率比较低(我测试了一下,在执行代码的时候,服务器 会真的去打开一个word客户端)。理想的com应该是没有界面的,在后台进行数据转换,这样效果会比较好,但是这些扩展一般需要收费。\n第2种方法,就是用PHP将我们的doc文档内容直接写入一个后缀为doc的文件中即可。使用这种方法不需要依赖第三方扩展,而且执行效率较高。\nword本身的功能还是很强大的,它可以打开html格式的文件,并且能够保留格式,即使后缀为doc,它也能识别正常打开。这就为我们提供了方便。但是 有一个问题,html格式的文件中的图片只有一个地址,真正的图片是保存在其他地方的,也就是说,如果将HTML格式写入doc中,那么doc中将不能包 含图片。那我们如何创建包含图片的doc文档呢?我们可以使用和html很接近的mht格式。\nmht格式和html很类似,只 …"
April 21, 2010
mysql集群强制从主服务器阻塞更新直到从服务器同步?
"Q:我怎样强制主服务器阻塞更新直到从服务器同步?\nA:使用下面的步骤:\n1.在主服务器上,执行这些语句:\nmysql\u0026gt; FLUSH TABLES WITH READ LOCK; mysql\u0026gt; SHOW MASTER STATUS; 记录SHOW语句的输出的日志名和偏移量。这些是复制坐标。2.在从服务器上,发出下面的语句,其中Master_POS_WAIT()函 数的参量是前面步骤中的得到的复制坐标值:\nmysql\u0026gt; SELECT MASTER_POS_WAIT(\u0026#39;log_name\u0026#39;, log_offset); SELECT语句阻塞直到从服务器达到指定的日志文件和偏移量。此时,从服务器与主服务器同步,语句返回。\n3.在主服务器上,发出下面的语句允许主服务器重新开始处理更新:\nmysql\u0026gt; UNLOCK TABLES; 来源:http://dev.mysql.com/doc/refman/5.1/zh/replication.html#replication-faq "
April 21, 2010
mysql集群从服务器复制传递和状态文件(master.info和relay_log.info)
"6.3.4. 复制传递和状态文件 默认情况,中继日志使用_host_name-relay-bin.nnnnnn_形 式的文件名,其中_host_name_是从服务器主机名,nnnnnn_是 序列号。用连续序列号来创建连续中继日志文件,从000001开始。从服务器跟踪索引文件中目前正 使用的中继日志。 默认中继日志索引文件名为_host_name-relay-bin.index。 默认情况,在从服务器的数据目录中创建这些文件。可以用–relay-log和–relay-log-index服 务器选项覆盖 默认文件名。参见6.8节,“复制启动选项”。\n中继日志与二进制日志的格式相同,并且可以用mysqlbinlog读取。SQL线 程执行完中继日志中的所有事件并且不再需要之后,立即自动删除它。没有直接的删除中继日志的机制,因为SQL线程可以负责完 成。然而,FLUSH LOGS可以循环中继日志,当SQL线程删除日志时会有影响。\n在下面的条件下创建新的中继日志:\n·每次I/O线程启动时创建一个新的中继日志。\n·当日志被刷新时;例如,用FLUSH LOGS或mysqladmin …"
April 20, 2010
Impossible WHERE noticed after reading const tables
"用EXPLAIN看MySQL的执行计划时经常会看到Impossible WHERE noticed after reading const tables这句话,意思是说MySQL通过读取“const tables”,发现这个查询是不可能有结果输出的。比如对下面的表和数据:\ncreate table t (a int primary key, b int) engine = innodb; insert into t values(1, 1); insert into t values(3, 1); 执 行“EXPLAIN select * from t where a = 2”时就会输出“Impossible WHERE noticed after reading const tables”。\n不明白所谓的“const tables”是什么意思,对MySQL在查询优化时竟然可以发现一个查询不可能输出结果更是感觉不可思议。按数据库中“传统”的做法,查询优化时只会访问模式定义和统计信息,而据我所知,数据库中使用的各种统计信息如EquiDepth、MaxDiff柱状图,MCV,属性的最大值、 …"
April 19, 2010
魔法引用函数 magic_quotes_gpc和magic_quotes_runtime的区别和用法
"PHP基础002: 魔法引用函数magic_quotes_gpc和magic_quotes_runtime的区别和用法\nPHP提供两个方便我们引用数据的魔法引用函数magic_quotes_gpc和magic_quotes_runtime,这两个函数如果在 php.ini设置为ON的时候,就会为我们引用的数据碰到单引号’和双引号”以及反斜线 \\ 是自动加上反斜线,帮我们自动转译符号,确保数据操作的正确运行,可是我们在php不同的版本或者不同的服务器配置下,有的 magic_quotes_gpc和magic_quotes_runtime设置为on,有的又是off,所以我们写的程序必须符合on和off两种情 况。那么magic_quotes_gpc和magic_quotes_runtime两个函数有什么区别呢?看下面的说明:\nmagic_quotes_gpc 作用范围是:WEB客户服务端; 作用时间:请求开始是,例如当脚本运行时.\nmagic_quotes_runtime 作用范围:从文件中读取的数据或执行exec()的结果或是从SQL查询中得到的; 作用时间:每次当脚本访问运行状态中产生 …"
April 19, 2010
windows下apache+php平台,虚拟主机安全设置
"先按这里的文档对服务器系统安全做设置: http://blog.haohtml.com/index.php/archives/3438\n对于php.ini的设置有: 1.修改为安全\nsafe_mode = true\n2.禁用一些系统函数\ndisable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server\n3.禁用com组件调用\n将 ;com.allow_dcom = true 修改为 com.allow_dcom = false 启用并禁用 4.指定上传文件的临时目录\nupload_tmp_dir = “d:\\php\\upload_tmp”\n5.启用特别字符转义功能\nmagic_quotes_gpc = On\n6. …"
April 19, 2010
服务器安全设置.卸载极其危险的 Wscript.Shell 和 shell.application 组件
"载极其危险的 Wscript.Shell 和 shell.application 组件,这2 个组件的主要作用是asp调用exe程序。\n几乎所有正常的网站都用不到,而要黑服务器却几乎都需要调用这个组件来执行操作\n运 行:regsvr32 /u c:\\winnt\\system32\\wshom.ocx 即可卸载 Wscript.Shell\n运 行:regsvr32 /u c:\\winnt\\system32\\shell32.dll 即可卸载 shell.application\n如果是window2000/20003则将winnt改为windows再运行即可"
April 19, 2010
同服务器多网站的安全设置(windows server+apache+php)
"在windows环境下,如果用IIS做webserver,可以配合ntfs为每个网站设置不同的用户权限,从而让一个网站的程序只能访问自己目 录下的内容.\n而在windows的apache环 境下,由于apache默认是最高的system权限,因此非常危险,若不做安全设置,随便传一个php shell到任何一个网站上,就能控制整台服务器。\n要实现这个目标,需要做以下设置:\n1、在vhost中设置 open_basedir,设置后,php程序将只能打开规定目录下的内容(此指令不受安全模式是否打开的限制)。如下。同时最好把php.ini的 upload_tmp_dir 目录也添加进去,否则可能无法正常上传文件。\nServerAdmin [email protected]\nDocumentRoot D:/abc\nServerName www.abc.com\nErrorLog logs/abc.com-error_log\nCustomLog logs/abc.com-access_log common\nphp_admin_value open_basedir “D:/abc;D:/php/temp” …"
April 17, 2010
JW Media Player 中文文档
"The JW MP3 Player (built with Adobe’s Flash) is the easiest way to add live music or podcasts to your website. It supports playback of a single MP3 file or an RSS, XSPF or ASX playlist, a wide range of flashvars (settings) for tweaking both behavior and appearance and an extensive, documented javascript/actionscript API.\n官方网址 http://www.jeroenwijering.com\n这篇文档包含了JW MP3 Player,JW FLVPlayer,JW Media Player,JW Image Rotator的安装方法和配置方 法\nJW PLAYERS 3.11 文档\n1,安装 (在你的站点里嵌入) 2,参数 (配置) …"
April 17, 2010
JW Player使用简介
"一、JW Player是什么?\n简单地说,JW Player是一种基于flash的交互式网页媒体播放器。它是由Jeroen 和 Wijering共同建立的LongTail Video所开发,问世于2005年,当时仍名不经传的YouTube首次采用的播放器就是JW Player。官方网址: http://www.longtailvideo.com/。\nJW Player含:FLV Player、WMV Player、Image Rotator和Desktop Player四种,除了最后一种实为桌面播放器,其他三种都是网页播放器。本篇内容仅限FLV Player。\n二、JW FLV Media Player简介\nJW FLV Media Player可播放Adobe Flash Player所支持的媒体,具体包括:FLV、MP4、MP3、AAC、JPG、PNG和GIF等,还支持RTMP、HTTP、实时视频流、各种播放清单 格式、灵活的设置和广泛的javascript API。此外它还提供多种外观、功能性插件来扩展播放器,以便我们可以分享、推荐、搜索、分析甚至广告投放。 …"