登录 注册

登录

问题 推荐一个1.5的文章真正静态化插件

更多
2008年12月07日 11:20 #21 作者: Joomla之门
我同意 yufi113 的说法,我在 XAMPP for Windows 服务器上已经通过 Artio JoomSEF 实现了完美的 URL rewrting,大家可以从我上面的屏幕截图中看出,我访问的页面 URL 中已经没有 index.php,并且结尾是 .html 。完全符合 Content Static 的要求。为什么还是出错?

我刚才按照 Joe 的要求,将这个插件的触发次序调整到最后一个(order: 99999),但是前台错误依然没变。

既然 yufi113 认为 Content Static 插件在 windows 平台出错的原因在于 fopen,那么针对 XAMPP for Windows 这个具体的服务器来说,有没有办法对 fopen 做什么简单的处理(例如启用或禁用?),使得我们可以顺利使用 Content Static?

或者,根本不可能使 Content Static 在 Win 平台顺利使用?

我已经在 JED 扩展库为 Content Static 插件评分 5 分(满分)。

如果大家喜欢这个插件,请不要忘了 到 JED 扩展库为  Content Static 插件评分 (不要光说不练,喜欢它就要表达出来!)

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月07日 16:24 #22 作者: joeguo
修复了一个Bug,现在可以在windows下面正常工作了。
要求还是上面 那么多。
如果直接放在http://localhost(或者http://www.xxx.com)下面,不需要设置根目录,
如果是需要通过http://localhost/joomla来访问,需要设置根目录,根目录于apache的docroot是同一个目录。
比如我在windows下面apache doc root 是
C:\xampp\htdocs
而Joomla安装在
C:\xampp\htdocs\joomla

我可以通过浏览器http://localhost/joomla来访问
那么需要设置根目录为:C:\xampp\htdocs

大家可以下载最新版本:
http://www.eboga.org/cms/joomla/joomla-plugin-content-static.html
不是服务器当掉了,是中国用户不能访问,可能是TheGreatWall的作用,不知道以后中国用户能否访问。
大家可以用Proxy试试看。

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月07日 19:33 #23 作者: 南荒
感谢joeguo的热心,刚刚去官网看了一下,确实作者修改了部分代码以适应了windows.有需要的在这里下载吧http://www.zhujianbo.com/wp-content/uploads/025_contentstatic1.0.2.zip

nhuang.com
zhujianbo.com
QQ群:19675428
新浪微博:weibo.cn/388580
循着真理的脚步,追寻,亦不必停留

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月07日 19:39 #24 作者: Joomla之门
很好!感谢 joeguo 最终修复了 bug。

不过,对于这个插件唯一的参数“Joomla 基准目录”我有点建议:在 Joomla! 1.5 的 configuration.php 文件中,$log_path 和 $tmp_path 这两个变量都涉及了 Joomla! 的安装目录路径,可否让插件自动分析这个路径来判断安装目录?

我觉得让用户填写这个路径可能会引起一些问题,因为有些用户自己不太懂如何判断并填写正确的路径。如果能让插件自动探测就最好了。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月07日 19:50 #25 作者: 南荒
一般情况下这个插件是自动侦测joomla默认路径的,Joomla base dir,不输入也可以

nhuang.com
zhujianbo.com
QQ群:19675428
新浪微博:weibo.cn/388580
循着真理的脚步,追寻,亦不必停留

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月11日 11:26 #26 作者: jade
郭先生(Joe Guo) 开发的 Content Static for J1.5 插件,很多人说可以生成静态文件,可是试用之后发现效果并不明显也!而且Joe的网站现在也要使用代理才可以连上也!

如果真的要加速,可以只生成content表里面的文章内容,其他评分和评论可以用AJAX实时调用,另外也可以有个选项是否把文章里面的插件和模块一起生成HTML格式,因为除了评分和评论和点击数经常变之外,其他的不会经常改变,这样每次只需要查询非常少次数的数据库了!

不贪加官再封爵位 并未见有所作为 闲人或许总给看低 没与你争辉 处事深不见底

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月15日 09:52 - 2008年12月15日 09:58 #27 作者: joeguo
jade,你好,以后直接称呼我Joe,我会更开心!

我也同样想法,然而实现起来并不是那么容易。
首先,评论机制并不是Joomla自带的,并且评论插件有那么多种,又有不同的版本和定制输出项,如果真的要替换成AJAX调用,也不是那么容易。

如果只是点击数替换成AJAX的方式,相对比较简单些。

我最近为Joomla开发了一个Search Engine Keywords Highlight 插件,

其中里面有一个AJAX的功能,虽然在本机调试通过了,但是在我自己的服务器上面始终不能正确显示,这些还都是在我自己控制的范围里面。

只能说,Content static应用也是非常有局限的,只是用在那些不太关心这些点击数,评论,和投票的网站上面。

如果大家有兴趣继续对Content static扩展下去,我们可以一起扩展开发下去。

PS:现在网站恢复了,前段时间IP给GTW给屏蔽了,现在更换了IP.
最后修改: 2008年12月15日 09:58 由 kurt.

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月15日 09:55 - 2008年12月15日 15:36 #28 作者: joeguo
  自动探测路径是理想的情况,在95%以上的 production环境下,都能自动探测到,如果万一探测的不正确,这个还是有点用处的。

Ps:现在网站已经恢复!

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月15日 13:26 #29 作者: karlim
帮joe顶一下.
自己开发的,赞一个.

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月15日 20:29 #30 作者: 2big4u
本着试用一下的心态,装了插件,结果我们的页面出现乱码问题,有谁能知道怎么去除呢,还有,怎么回复到没有静态页面前的状态。我发现根目录下, 多了一些文件夹,是不是要删除?

请帮忙

http://www.tourtravelchina.com/china-city-tours.html

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月15日 20:40 #31 作者: joeguo
只要把生成的静态文件删除掉,然后disable content static plugin就可以了。
刚才浏览了一下网站,造成乱码的原因应该是模板输出的页面没有编码信息。
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />

建议大家安装任何插件之前,最好能够在自己的测试机上安装,不要直接在server上面安装,以免造成损失。

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月18日 12:06 #32 作者: 2big4u
谢谢Joe大哥,您是我们中国人的骄傲。SEOMeta也是您开发的吧,菜鸟我也在用

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月18日 12:14 #33 作者: joeguo
2big4u 客气了,以后称呼Joe,我会更开心。
我自己也是非常喜欢SEOMeta这个插件, 有什么需求或者改进,还请提出宝贵意见。

登录 或者   注册一个会员帐号 来参与讨论

更多
2008年12月31日 14:59 #34 作者: silence
求一个1.5.x下前台加速的插件,不知道有没有?

登录 或者   注册一个会员帐号 来参与讨论

更多
2009年01月13日 01:37 #35 作者: xyf80
Joe,2个问题
1,转存后的html文件好像也不是完全意义的静态文件,好像还是得调用数据库吧
2,组件里面的东东没有静态化,比如VM,是否有更新的高级版本设计中?

谢谢!

登录 或者   注册一个会员帐号 来参与讨论

更多
2009年01月13日 11:58 #36 作者: joeguo
1.转存后的html文件是完全意义上的静态文件,是服务器(Apache)可以直接访问的文件, 不需要访问数据库。但是仍旧依赖于模板中的css,image等。
2.目前,只能是com_content中的文章静态化,毕竟文章发表后,一般不会更改,其它的内容仍旧留作动态内容,没有去静态化。如果想全部静态化,请注视掉contentstatic.php中的一句代码:
  if ((JRequest :: getVar('view')) != 'article'){ return;}

如此,就可以对所有的内容静态化了,效果如何,我也没有多测试过,你可以在自己local的环境下面测试一下,看能否满足你个人要求。

登录 或者   注册一个会员帐号 来参与讨论

更多
2009年01月13日 12:19 #37 作者: xyf80
效果很不错,赞的很,只是要是能静态化商城里面的链接就好了!

登录 或者   注册一个会员帐号 来参与讨论

更多
2009年01月30日 14:44 #38 作者: xyf80
老白在帖子中写到:

我觉得最好的解决办法是:安装 sh404SEF 来解决 SEF URL 问题;然后安装一个“定时转储 HTML” 插件来生成静态文件。例如,每天凌晨 3 点自动将前一天的所有新增及更新页面转储为真正的 HTML 文件保存在网站的某个目录里面,这样才是真正静态。

现在问题是:安装一个“定时转储 HTML” 插件
到哪里下载呢?好像没有这类的插件啊,老白能给指明路么? 呵呵,多谢!
另外,对网站静态话这个问题,我现在越来越觉得是个严重的发展问题,随着网站的变大,速度逐渐变慢,实在受不了了,别的办法就完全没有了么?伪静态不是个办法啊。

登录 或者   注册一个会员帐号 来参与讨论

更多
2009年02月04日 12:34 #39 作者: jade
Joe开发的Content Static(以下简称JCS)其实可以做得更加好,也可以成为Joomla!五星级插件,由于Joomla!的核心问题、rewrite和N多问题,最主要是没有永久链接这个问题,缓存和SEO的问题一直没有解决,所以发表的文章只能依靠搜索引擎,如果共享出去,文章的链接一改变,又要重新开始共享多次。

例如:
http://www.joomla.org/component/ 分类/单元/文章
哪天官方改了核心,变成
http://www.joomla.org/ 分类/单元/文章
这样文章的链接已经改变,所以说官方一早没好好的考虑SEF和共享文章的问题,动态网页同样存在如此问题。另外SEO Settings里面的所有设置都要设置开启了,这个没有办法解决!

Content Static新版本把所有生成的静态文件放在 /目录/域名的目录 的里面,如果改进这些功能,这个插件一定非常强大:

a.自定义把静态文件放在哪个位置,例如放在 /cache 目录里面,这个有什么问题把 /cache 目录里面的文件删除就可以了
b.是否在生成静态文件的 footer 显示一条信息显示这个文章是JCS生成的缓存
c.启动 gzip 压缩功能,节省带宽
d.设置缓存文件过期时间和多久删除一次过期的缓存文件,垃圾回收机制,自动更新缓存,哈哈,最好可以在插件界面集成这些按钮
e.设置某些搜索引擎爬虫来的时候,拒绝访问缓存文件
f.显示缓存文件和过期文件的数量
g.支持多国语言
h.集成显示新版本功能,点击之后跑到 www.eboga.org/cms/joomla/joomla-plugin-content-static.html 检测是否有新版本,虽然不能做到自动更新,希望以后的JED可以

特别设计思路,JCS是访问JCS缓存里面的缓存文件,那可不可以实现这些功能了?
a.文章点击:jquery/ajax查询 jos_content 里面的 hits 字段,文章点击通常是修改模板才会显示出来的,joe也有插件可以让网站支持JQuery,如果觉得意义不大可以忽略,但是要注意的就是当前的hits数要+1。
b.文章评论:由于没有官方的组件,如果觉得意义不大也可以忽略,如果可以动态调用也更加完美,可以通过JCS插件支持其他评论组件
c.添加和编辑文章的时候,触发性更新缓存,这个是必要功能
d.jos_content 里面的 title(标题) alias(别名/文件名) introtext(readmore之前) fulltext(跟着readmore的内容) 这些可以做成永久静态内容,除非更新文章内容的时候才触发查询和生成新的静态文件,可以有个功能给用户只静态某些字段的内容,其他的动态查询?
e.alias(别名/文件名) 就是这个文章的文件名字,通过HACK核心文件,alias(别名)可以是中文,所以也希望joe可以开发个UTF-8多国语言的别名插件,相信joe的插件之间的兼容性会更加好,UTF-8中文别名 + UTF-8中文文件名,之前 maycode 有个文章 Joomla!中将空的标题别名转换为汉语拼音 http://www.maycode.com/index.php/forum.html?func=view&id=2675&catid=9 就是可以把别名转换成UTF-8或者拼音,可惜没有继续研究下去!

当然缓存插件还是可以做到很强大的,上面的功能其实完美可以实现,还有很多加快Joomla!显示速度的方法,以后再和大家探讨一下了,希望JCS还可以做到压缩CSS、JS和图片的功能,例如把很多小图片压缩在一个图片里面,这样连接的时候只需要一个连接,同样CSS和JS也一样!Thank You大家在听我乱吹! :D

不贪加官再封爵位 并未见有所作为 闲人或许总给看低 没与你争辉 处事深不见底

登录 或者   注册一个会员帐号 来参与讨论

更多
2009年02月05日 15:22 - 2009年02月10日 13:57 #40 作者: joeguo
Jade真是一个有想法的人!你提出的问题和方向有些我也想到了,有些却是我没有想到的。

下面,我找一些目前我能够回答的问题,暂做简单回答:

1. Joomla core设计
url设计成: http://www.joomla.org/component/分类/单元/文章
而不是:
http://www.joomla.org/ 分类/单元/文章。
对于能够扩展component来说,url中肯定要有标识是那个component来的部分。只是对于文章这个最常用的模块来说,有没有值得做些特殊处理?如果做了特殊处理会不会有什么副总用,这个就得留给joomla team去考虑了。
2. 我在java中就曾经做过这么一个功能,将文件保存到一个目录,保存的是gzip压缩过的文件,下次请求时,如果浏览器支持gzip压缩,就直接设置一个reponse header 为Content-Encoding: gzip,重定向就可以了,如果客户端不支持(<5%),先解压缩然后再发回客户端。
对于Joomla,所有的请求都是交给index.php来处理的,而对于已经生成的html静态文件,是apache直接处理的,中间没有程序可以来控制response header,只有通过mod_mime来控制,将所有的.html文件强制设置成gzip encoding.这样虽然不会出大问题,但是总是存在隐患(5%的客户)。不知有没有其它的办法?工作量有多大。
3.缓存文件和过期文件数目。Joomla Cache可能会提供这个功能。
4.我写过一个插件可以将汉子标题自动转换成拼音alais,这样url就是拼音的。这个插件没有发布,并且是在浏览时进行转换,可能会对性能有所影响,如果能够在保存文件时候,自动转换就更好了,现在好像提供了一个beforesave接口应该可以转换。

最好不要hack core文件,这点在国外的社区非常注重,以后要升级可能非常困难。

关于最后一个问题,我想推荐一个我新开发的插件:CssJsCompress

Joomla Plugin Css and Javascript aggregate and compress


安装完Jooomla再加上安装一下module和plugin,css/js文件一般都有20多个,这样做会大大影响服务器的相应速度和并发性。

这个插件会自动将所有的css/js文件合并成一个css/js文件,还可以用gzip压缩css/js。
合并css/js后,只需要2个连接。如果用gzip压缩,css大约是原来的10-20%,js一般是原来的30%(生成和压缩均为一次性的,以后直接加载。如果新安装了module,从而引起css/js文件变化的时候会重新生成)。

关于CSS和js合并压缩的插件,请参考:
http://www.joomlagate.com/component/option,com_smf/Itemid,31/topic,4728.0/
最后修改: 2009年02月10日 13:57 由 yessit.

登录 或者   注册一个会员帐号 来参与讨论