EEDU Blog: 博客 ·  资讯 ·  论坛 ·  留言
登录 新用户? 注册   |  

ahaoxie's blog

订阅博客:

环境生态网站长

服务器应用

UseBB(开源论坛)

UseBB一个用PHP和Mysql数据库开发的开源论坛,与其他流行的论坛不同,UseBB不是一味的追求拥有多少功能,而是以开发简单易用的论坛为目标。UseBB对于那些需要在资源有限的虚拟主机上架设一个易于使用的论坛是一个很好的选择。

 

usebbv1.0.14 更新日志:

- Added Google Analytics support
- Added re-sync statistics ACP module
- Added Stop Forum Spam API request ACP module
- Potential spammer restrictions can be applied to guests
- Automatically close other sessions for same user
- Subsets of breadcrumbs can now be used in templates

官网:http://www.usebb.net
演示:http://www.usebb.net/community/

发表于: 2011-11-08 09:50 | 全文(查看: 70) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: php  

Umbraco CMS(.Net)

Umbraco是一个开源的asp.net的CMS内容管理系统,使用mssql进行存储数据。使用Umbraco,设计师能创造出有效的XHTML标记模板和开发人员可以创建任何基于.Net的模块。主要特点包括:

漂亮,友好的用户界面(支持多语言)
综合所见即所得编辑器(可以创建各类控件)
支持编辑在Microsoft Word
全部源代码可用(开放源代码)
超级简单的模板引擎
完全支持Web标准

官网:http://umbraco.com/
发表于: 2011-09-08 18:07 | 全文(查看: 189) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: cms  新知  

开源论坛系统FUDforum

FUDforum是一个基于PHP+MySQL/PostgreSQL构建的开源论坛系统。提供i18n支持当前FUDforum2.3已经翻译成8种语言包括中文;采用模板系统来控制界面外观;基于角色的 权限控制系统;提供短消息发送平台;提供审查和回收站系统;支持附件/投票/全文搜索/IP跟踪/用户禁用/电子报/自定义Tag/排列用户等级等。

该版本支持静态论坛页、全局的通知、嵌套的子论坛和爬虫检测等功能;新增对 DB2、SQL Server 和 Firebird 数据库的支持;增加更多新的语言;使用 HTML5 页面规范。

演示:http://fudforum.org/forum/

发表于: 2011-09-05 22:13 | 全文(查看: 43) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: php  新知  

Fork CMS

Fork CMS 使用十分简单,注重用户体验,包含博客、问答、表格等模块,适合于建立小型商业网站或者个人博客,目前官方还未发布简体中文语言包。

官方:http://www.fork-cms.com/
演示:http://www.fork-cms.com/demo

发表于: 2011-09-02 15:10 | 全文(查看: 36) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: cms  新知  

Piwigo(开源相册)

Piwigo是一个基于MySQL5与PHP5开发的相册系统。提供基本的发布和管理照片功能,按多种方式浏览如类别,标签,时间等。

 

Piwigo 2.2.4 发布了,该版本包含的改进有:

1. 新增保加利亚语支持
2. 本地文件编辑器插件引入一个改进的 CSS 文件选择器
3. 对一个私有相册上创建子相册自动继承权限
4. New methods in the Piwigo API to set a photo as representative of an album or to set photo manual order in an album.
5. 提升了性能
6. Piwigo 2.2.4 gives you back this randomness as an option.
7. 更好的检测升级失败的原因

官网:http://piwigo.org/

发表于: 2011-08-23 09:41 | 全文(查看: 127) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: php  相册  新知  

windows 2003组策略禁Ping

第一步: 先打开"开始→管理工具→本地安全策略",打开"本地安全设置"对话框。鼠标右键单击对话框左侧的"IP安全策略,在本地计算机"选项,执行"管理IP筛选器表和筛选器操作"命令;在弹出对话框的"管理IP筛选器列表"标签下单击[添加]按钮,命名这个筛选器的名称为"禁止Ping",描述语言可以为"禁止任何其他计算机Ping我的主机",单击[下一步];选择"IP通信源地址"为"我的IP地址",单击[下一步];选择"IP通信目标地址"为"任何IP地址",单击[下一步];选择"IP协议类型"为"ICMP"(Ping和Tracert等命令操作都是利用ICMP协议中的报文进行的),单击[下一步],最后点击[完成]结束添加。之后切换到"管理筛选器操作"标签下,依次单击"添加→下一步",命名筛选器操作名称为"阻止所有连接",描述语言可以为"阻止所有网络连接",单击[下一步];点选"阻止"选项作为此筛选器的操作行为,最后单击[下一步],完成所有添加操作。
 
第二步: 击控制台中的"IP安全策略,在本地计算机"选项,执行[创建安全策略]命令,然后单击[下一步]按钮;命名这个IP安全策略为"禁止Ping主机",描述语言为"拒绝任何其他计算机的Ping要求",并单击[下一步];勾选"激活默认响应规则"后,单击[下一步];在"默认响应规则身份验证方法"对话框中点选"使用此字符串保护密钥交换"选项,并在下面的文字框中任意键入一段字符串(如"NO Ping"),单击[下一步];最后勾选"编辑属性",单击[完成]按钮结束创建。

第三步: 在打开的"禁止Ping属性"对话框中的"常规"标签下单击"添加→下一步",点选"此规则不指定隧道"并单击[下一步];点选"所有网络连接",保证所有的计算机都Ping不通该主机,单击[下一步];在"IP筛选器列表"框中点选"禁止Ping",单击[下一步];在"筛选器操作"列表框中点选"阻止所有连接",单击[下一步];取消"编辑属性"选项并单击[完成],结束配置。

第四步: 安全策略创建完毕后并不能马上生效,我们还需通过"指派"功能令其发挥作用。右击"本地安全设置"对话框右侧的"禁止Ping主机"策略,执行"指派"命令,即可启用该策略。

发表于: 2011-08-21 23:48 | 全文(查看: 90) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: IP策略  新知  

Zend 出现 Unable to view file mapping 的解决方案

zend 错误日志中有:Unable to view file mapping, 试图访问无效的地址。
网上搜了下解决方法有

解决方法如下:
对比php两个版本的php.ini文件。
;extension=php_yaz.dll
;extension=php_zip.dll
检查这个两个是否存在新的版本中。
同时确认
extension=php_zip.dll
前面的;去掉保存重启iis和mysql 大功搞成
另外一种说法
eAccelerator v0.9.4-rc1, 这个php加速插件,把这个屏蔽掉就可以了
其他方面:
1.检查下c:\windows\temp\目录是否有iis用户组和NETWORK_SERVICE访问权限
2.zend安装目录是否有iis用户组和NETWORK_SERVICE访问权限,写入权限.
3.删除c:\WINDOWS\temp\ 下的垃圾文件.
4.php.ini文件中设置upload_tmp_dir="c:\windows\temp\"(注意=两边的空格)

5.还有一条就是找不到ZendOptimizer.MemoryBase@SYSTEM文件吧,方法同上面,在c:\WINDOWS\temp\建一空文件,文件名ZendOptimizer.MemoryBase@SYSTEM即可

==================================================================================

查看“事件查看器”中出现一个Zend Optimizer错误,而且这个错误都是每次启动服务器之后产生的:

事件类型: 错误
事件来源: Zend Optimizer
事件种类: 无
事件 ID: 487
日期: 2008-2-28
事件: 9:22:15
用户: N/A
计算机: XXX
描述:
事件 ID ( 487 )的描述(在资源( Zend Optimizer )中)无法找到。本地计算机可能没有必要的注册信息或消息 DLL 文件来从远程计算机显示消息。您可能可以使用

/AUXSOURCE= 标识来检索词描述;查看帮助和支持以了解详细信息。下列信息是事件的一部分: Unable to view file mapping, 试图访问无效的地址。

查阅了一下网上的资料,其实只有一个版本,具体内容可以看下面的参考资料。我这里结合自己的解决方法总结一下:

首先如果你的PHP使用了eAccelerator则将其注释掉就可以了,这是因为Zend Optimizer同eAccelerator相冲突。其实二者都是用于加速PHP程序的,只要使用其中的一个就可以

了。

如果你的PHP没有使用eAccelerator的话则大部分是权限的问题了,这种情况在Apache+PHP中很少见,通常都是在IIS+PHP这种搭配中出现的比较多。这个时候只需要修改%

SystemRoot%\Temp的权限,设置为EveryOne全部允许;然后如果该目录下没有ZendOptimizer.MemoryBase@SYSTEM文件的话就手动新建一个文本文件然后命名为

ZendOptimizer.MemoryBase@SYSTEM即可。

如果还是有问题的话可以查看一下php下的ext目录中是否有php_yaz.dll和php_zip.dll两个文件,有哪一个就在php.ini将 “extension=…”前面的分号去掉。

================================================================================

  前两天在本地调试PHP程序时,发现安装的VertrigoServ中,ZendOptimizer运行不正常,在C盘根目录下生成了个ZendOptimizer_errors文件,最主要的问题是下面两个:

Unable to open base address file:系统找不到指定的路径。
Unable to view file mapping:重叠 I/O 操作在进行中。

  下面分享我的问题核心:出现这样的问题,一般是缓存目录指定错误所导致的!

步骤方法:右击我的电脑 - 属性 - 高级 - 环境变量 - 将用户配置里的TEMP与TMP的路径指定为系统变量里的TEMP与TMP的路径值:如%SystemRoot%\TEMP或者其他路径确定路径,如D:\Temp这个路径确定,重启电脑。

设置好的参考图片如下:

  再次运行php服务器程序,C盘根目录下再不出现ZendOptimizer_errors.txt报告,报告里也不会出现上面的两个错误了,设置好的路径目录下自动生成了ZendOptimizer.MemoryBase@SYSTEM等这两个文件。问题解决!
2009年5月23日补充: 复制内容到剪贴板
代码:
解决办法:
1、修改C:\WINDOWS\Temp\目录的访问权限,使Zend可以对目录进行修改,一般添加IIS_WPG和Network Service的写入权限就够了。
2、有可能在C:\WINDOWS\temp\目录下找不到指定文件,查找该文件夹下是否有文件名ZendOptimizer.MemoryBase@SYSTEMZendOptimizer.MemoryBase@NETWORK SERVICE,如果没有,新建这两个文件,空文件即可。
3、php.ini文件中设置upload_tmp_dir = "c:\windows\temp\"(注意=两边的空格)。
4、还有可能就是没有读取ZEND目录的权限,为C:\Program Files\ZendOptimizer-2.6.2\lib\目录添加IIS_WPG和Network Service的读取权限(注意zend版本和安装目录不同时前面的路径也有所不同)
注意:前面提到的“C:\WINDOWS\Temp\”上当并非绝对,关键看php.ini文件中“upload_tmp_dir”等于什么路径。2009年3月25日补充:
在Windows Server 2003 系统的NTFS的文件系统中,还涉及到访问权限问题,如ZendOptimizer的默认安装目录为C:\Program Files\Zend,我们需要给Zend这个目录添加一个IIS的启动账户IIS_WPG的读取运行,列出目录,读取的权限。这样就能解决因权限导致的Unable to view file mapping错误。

发表于: 2011-08-16 23:01 | 全文(查看: 972) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: zend  php  新知  

MySQL 的错误 Sort aborted 的解决方法

解决方法:

可能存在数据量非常大的数据表,或是执行了带 order by OR group by 的 SQL 语句。

1、独立主机建议您检查下内存的使用情况。建议将 MySQL 配置文件中的 sort_buffer_size 、read_rnd_buffer_size、read_buffer_size 设置大点(MYSQL配置文件 Unix/Linux: my.cnf,Windows: my.ini)。再加上内存与 CPU 使用量大的时候也会导致 MySQL 死掉。

2、如果是虚拟主机请联系您的空间商。

参数解释:
sort_buffer_size
含义:为每个需要进行排序的线程分配该大小的一个缓冲区。
影响:增加这值加速ORDER BY或GROUP BY操作。不过该参数对应的分配内存是每连接独占的。

read_buffer_size
含义:顺序查询操作所能使用的缓冲区大小。
影响:和sort_buffer_size一样,该参数对应的分配内存也是每连接独享。

read_rnd_buffer_size
含义:随机查询操作所能使用的缓冲区大小。
影响:每个线程独享。

参考配置:

read_buffer_size=10M
read_rnd_buffer_size=5M
sort_buffer_size=10M

发表于: 2011-08-10 10:26 | 全文(查看: 371) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: mysql  新知  

用apache实现禁止IP段或者主机对某个目录的访问

Allow 指令
说明: 控制哪些主机能够访问服务器的一个区域
语法: Allow from all|host|env=env-variable [host|env=env-variable] …
上下文: 目录, .htaccess
覆盖项: Limit
状态: Base
模块: mod_access

Allow指令影响哪些主机可以访问服务器的一个区域。可以用主机名、IP地址、 IP地址范围或者其他环境变量中捕获的客户端请求特性来对访问进行控制。

这个指令的第一个参数总是from。随后的参数可以有三种不同形式。 如果指定Allow from all,则允许所有主机访问,需要 Deny和Order指令像下面讨论的那样配置。 要只允许特定一部分主机或主机群访问服务器,host可以用下面任何一种格式来指定:

一个域名(部分)
例子:Allow from apache.org
允许名字与给定字符串匹配或者以该字符串结尾的主机访问。 只有完整的名字组成部分才被匹配,因此上述例子将匹配foo.apache.org而不能匹配fooapache.org。 这样的配置将引起服务器执行一个对客户IP地址的反查域名操作而不管HostnameLookups指令是否设置
完整的IP地址
例子:Allow from 10.1.2.3
允许一个主机的一个IP地址访问。
部分IP地址
例子:Allow from 10.1
IP地址的开始1到3个字节,用于子网限制。
网络/掩码对
例子:Allow from 10.1.0.0/255.255.0.0
一个网络a.b.c.d,和一个掩码w.x.y.z。用于更精确的子网限制。
网络/nnn 无内别域间路由规格
例子:Allow from 10.1.0.0/16
同前一种情况相似,除了掩码由nnn个高位字节构成。
注意以上后三个例子完全匹配同一组主机。

IPv6地址和IPv6子网可以像下面这样指定:

Allow from fe80::a00:20ff:fea7:ccea
Allow from fe80::a00:20ff:fea7:ccea/10

Allow指令的第三种参数格式允许对服务器的访问由 环境变量的一个扩展指定。指定 Allow from env=env-variable时,如果环境变量env-variable存在则访问请求被允许。 使用由mod_setenvif提供的指令,服务器用一种基于客户端请求的弹性方式提供了设置环境变量的能力。 因此,这条指令可以用于允许基于像User-Agent(浏览器类型)、Referer或者其他Http请求头字段 的访问。

例子:
SetEnvIf User-Agent ^KnockKnock/2.0 let_me_in
<Directory /docroot>
Order Deny,Allow
Deny from all
Allow from env=let_me_in
</Directory>

这种情况下,发送以KnockKnock/2.0开头的用户代理标示的浏览器将被允许访问,而所有其他浏览器将被禁止访问。

Deny 指令
说明: 控制哪些主机被禁止访问服务器
语法: Deny from all|host|env=env-variable [host|env=env-variable] …
上下文: 目录, .htaccess
覆盖项: Limit
状态: Base
模块: mod_access

这条指令允许基于主机名、IP地址或者环境变量限制对服务器的访问。 Deny指令的参数设置和Allow指令完全相同。

Order 指令
说明: 控制缺省的访问状态和Allow与Deny指令被评估的顺序。
语法: Order ordering
默认值: Order Deny,Allow
上下文: 目录, .htaccess
覆盖项: Limit
状态: Base
模块: mod_access

Order指令控制缺省的访问状态和 Allow与Deny指令被评估的顺序。 Ordering是以下几种范例之一:

Deny,Allow
Deny指令在 Allow指令之前被评估。缺省允许所有访问。 任何不匹配Deny指令或者匹配 Allow指令的客户都被允许访问服务器。
Allow,Deny
Allow指令在 Deny指令之前被评估。缺省禁止所有访问。 任何不匹配Allow指令或者匹配 Deny指令的客户都将被禁止访问服务器。
Mutual-failure
只有出现在Allow列表并且不出现在 Deny列表中的主机才被允许访问。 这种顺序与Order Allow,Deny具有同样效果,不赞成使用,它包括了哪一种配置。
关键字只能用逗号分隔;它们之间不能有空格。注意在所有情况下每个Allow和Deny指令语句都将被评估。

在下面的例子中,apache.org域中所有主机都允许访问,而其他任何主机访问都被拒绝。

Order Deny,Allow
Deny from all
Allow from apache.org

下面例子中,apache.org域中所有主机,除了foo.apache.org子域包含的主机被拒绝访问以外,都允许访问。 而所有不在apache.org域中的主机都不允许访问,因为缺省状态是拒绝对服务器的访问。

Order Allow,Deny
Allow from apache.org
Deny from foo.apache.org

另一方面,如果上个例子中的Order指令改变为Deny,Allow, 将允许所有主机的访问。这是因为,不管配置文件中指令的实际顺序如何, Allow from apache.org指令会最后被评估到并覆盖之前的 Deny from foo.apache.org。所有不在apache.org 域中的主机也允许访问是因为缺省状态被改变到了允许。

即使没有伴随Allow和Deny指令,一个Order 指令的存在也会影响到服务器上某一个部分的访问, 这是由于他对缺省访问状态的影响。例如,

<Directory /www>
Order Allow,Deny
</Directory>

这样将会禁止所有对/www目录的访问,因为缺省状态将被设置为拒绝.

Order指令只在服务器配置的每个段内部控制访问指令的处理。 这暗示着,例如,一个在<Location>段出现的 Allow或者Deny指令总是将会在一个<Directory>段或者 .htaccess文件中出现的 Allow或Deny 指令之后被评估,而不管Order指令中的设置为何。要了解配置段落合并的详细信息, 参看How Directory, Location and Files sections work相关文档
1.只允许 12.34.56.01访问,其他的都不允许访问,当然包含12.34.56.78
<Directory /var/www/html/internal>
order allow,deny
allow from 12.34.56.01
</Directory>

2.只拒绝12.34.56.78,其他都允许:
<Directory /var/www/html/internal>
order deny,allow
deny from 12.34.56.78
</Directory>

发表于: 2011-08-08 00:27 | 全文(查看: 49) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: apache  新知  

Jease(开源框架)

Jease是一个开源的框架,用来简化用Java开发基于内容和数据库驱动的Web应用。另外 Jease 提供了一个完全 Ajax 驱动的内容管理系统作为一个最佳实践来带你快速学习 Jease。

 

Jease v2.3主要改变:

 

New Features

Implemented Timer which executes a task (stored in the Registry) periodically.
Usability change: close editors on save with right mouse click, keep editor open with left mouse click. Using this as default seems to be a better approach for the average user to prevent content losses due to missing saves. Also modal windows will be now used for all editors.
Detect and confirm unsaved changes. Therefore Node#copy(recursive) needed to be introduced to create non-recursive copies of Nodes ("don't copy children"). This API-change needs to be reflected by custom content implementations.
Global Wiki language and link pattern can now be configured via JEASE_WIKI_LANGUAGE and JEASE_WIKI_LINKS
Added advanced constructors to all Properties, so the creation of properties via code is less verbose.

 

Refactorings

Moved site.Controller to jease.cms.web.servlet.JeaseController to avoid cluttering of global namespace; also moved init code from JeaseServletListener to JeaseController. Update to web.xml (and maybe JEASE_SITE_REWRITER) needed.
Moved site.Compilers to jease.cms.service.

 

Bug fixes

Deleting an unsaved node resulted in NPE.
Clear id to avoid path change processing on copies. Otherwise the copies were referenced instead of the originals.
Fixed several possible NPEs with null-properties.
Fixed extension stripping for content restore (e.g. folder names with dots were not handled properly).

 

Dependency Updates

CKEditor 3.6.0
Tomcat 7.0.19

官网:http://www.jease.org/demo/

发表于: 2011-08-03 16:47 | 全文(查看: 109) | 评论(0) | 本文地址 | 收藏 
分类: 服务器应用(148)   标签: jsp  新知  
Page was generated in 66 milliseconds