存档

‘建站’ 分类的存档

Godaddy上dokuwiki安全策略

2010年12月4日 没有评论

在GoDaddy上架了个dokuwiki做简单的pkm。在管理员登录后,dokuwiki总有一个安全提示,说dokuwiki的安全设定有问题。之前没去折腾它,一直忍着大红叉,直到今天无意打开了指导文章,按照上面的提示,访问了一下url: http://xiaoy.info/pkm/dokuwiki/data/pages/wiki/dokuwiki.txt,居然很顺利的就把wiki内容取出来了(别试了,现在已经不行了微笑),按图索骥就可得到所有wiki,就算设定了private也照样可以拉到。赶紧看解决方案,官方给出两个方法:

  1. 通过WebServer配置,禁用关键目录(data/conf)的访问
  2. 将关键目录从htdocs移走

杯具的是,这两个方法对godaddy免费windows主机都无效。它上面跑的是IIS,而IIS想禁用关键目录访问,必须有IIS控制权限,免费主机当然是没有的。

而第2个方法,godaddy为每个用户只提供了htdocs目录,无法把文件放置于其他地方。

难道就没有别的解决方案了么?分析一下现在的目标是:让用户无法直接访问到关键目录。官方两种方法为了达到这个目的,采用了webserver配置或者htdocs的方法,但达到这个目的只有这两个方法么?显然答案是no.在godaddy上,可以用很简单的基于IIS的方案:

修改web.config,用rule匹配的方式,禁用掉data目录和conf目录的访问:

<rule name="secure">
	<match url="^pkm/dokuwiki/(data|conf|bin|inc)/?(.*)?$" />
	<action type="CustomResponse" statusCode="403" statusReason="Forbidded" statusDescription="Forbidden" />
</rule>

当识别到关键目录的直接访问时,直接返回403错误,这样就很简单明了的解决了问题微笑

 

参考: http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/

分类: 建站 标签: , ,

SyntaxHighlighter自动换行与googlechrome冲突

2010年5月23日 没有评论

安装syntaxHighlighter后,发现了一个问题:如果插入的代码段中,含有较长的行,超过了代码块Box的长度。这种情况下,预期它是可以换行的,但实际上在googlechome主题下并未换行,导致超出部分的代码不可见。

通过搜索引擎发现,还是有不少人有相同的问题。于是就折腾了一下:

  • SyntaxHighlighter 2.0后,已经支持自动换行了,并可以通过wrap-lines的配置来打开或者关闭。于是尝试将wrap-lines设置为true,依旧不能正常换行,未解决问题。
  • 尝试换主题,发现默认主题下,换行是可以正常工作的
  • 不同主题会影响到显示效果的,主要是CSS。于是开始怀疑是CSS冲突。 用Firebug分析比较两个主题的CSS,逐渐注意到white-space这一选项。
    • 在googlechrome主题下,经过计算后的white-space值是pre,而默认主题下,计算结果为normal。
    • 再次搜索,在cssmagic的一篇文章中(很清晰明白,推荐阅读),找到以下表格:
  • white-space 属性值一览表 

    属性值 空白符 换行符 自动换行 最早出现于
    normal 合并 忽略 允许 CSS 1
    nowrap 合并 忽略 不允许 CSS 1
    pre 保留 保留 不允许 CSS 1
    pre-wrap 保留 保留 允许 CSS 2.1
    pre-line 合并 保留 允许 CSS 2.1
    • 在Firebug中的CSS中,检查white-space的CSS样式文件,定位到主题的screen.css。

    • 编辑该文件,找到white-space:pre,移除并更新文件,刷新一下,问题解决。

折腾的结论如下:

  • 对于定制较高的主题,要注意主题与插件的CSS冲突
  • 本文适用的syntaxHighlighter为2.1.364
分类: 建站 标签: ,

Godaddy免费windows空间使用wordpress

2010年5月22日 1 条评论

在godaddy注册过域名的朋友都知道,煮一个米就会免费送一个空间。这个空间很不错:

  • 速度快,ping值很理想,打开页面速度很满意(200ms左右)
  • 空间大(10G),流量大(3000G),对于本站之流的小博客站,绰绰有余
  • 有丰富的PHP/MySQL支持

但缺点很明显:它的顶部有一个巨大的广告,让人无法接受。linux无论动态还是静态页面,都有这个广告。但windows主机的php页面,是没有这个广告的(静态的也有),而我们知道wordpress基于php,因此,对于我等穷人,选它的windows主机来做wordpress站,还是很不错的选择。

  1. 申请域名和免费开通空间,网上资料很多,就不浪费笔墨了,可以参考openboy的文章。但要注意,开通空间时,请选择Windows Hosting,并开通PHP支持。
  2. 进入管理面板,选择Database->MySQL,在打开的mysql管理页面中,初始化用户、创建数据库。
    image 
    因为godaddy的mysql和windows机器是独立的,wordpress默认的localhost无法连接到mysql,所以还应该找到mysql的地址。打开phpMyqlAdmin
    image 
    登录pma后,在打开的管理页面,就可以看到这个信息了:
     image
  3. 安装wordpress,需要注意的是:将数据库的ip要填上面记下来的IP。
  4. 几分钟后,wordpress站就新鲜出炉了。
分类: 建站 标签: ,

完美解决godaddy免费Windows空间安装Google XML Sitemap

2010年5月10日 1 条评论

    空间使用注册域名时godaddy送的免费主机,但免费的午餐吃起来总不那么顺口,安装调试过程中,遇到了不少问题。利用Google XML Sitemaps生成Sitemap就是其中一个。

    按照平常顺序上传、解压、安装该插件,一切看起来很顺利,但生成Sitemap总是提示:“没有对sitemap.xml的写权限”。百度+Google,试验+看PHP代码,一阵捣鼓,终于搞定了这个问题。

    主要的两个拦路虎:

  • sitemap.xml的权限
  • 生成Sitemap的写入错误

    都是小问题,但定位修复的过程很折腾,为了让其他朋友免受此痛苦,整理出Godaddy的Win主机安装该插件的方案如下:

  • 首先, 按照官方标准的INSTALL说明,下载安装,再手工生成出两个sitemap文件
  • 为文件赋读写权限。进入文件管理器FileManager,它的权限管理比较奇怪,首先不支持单独文件的读写权限,只能以目录为单位进行管理,想改哪个目录就点哪个目录进行设置。如果是根目录,Godday为我们预留了一个fake directory,叫[Root],用它就可以对根目录下的文件属性进行修改。

  • 在权限管理窗口中,勾上Read/Write, 取消Inherit选项 ->OK ,稍等几秒钟,等到它提示修改成功,整个根目录(不包含子目录)的属性已经修改完毕。

  • 于是我们很开心,这下总该生成了吧!兴冲冲的进入WordPress插件的属性设置页,选择“重建索引”,很不幸,还在提示我们文件不存在或者没权限写,可明明已经生成出文件,并已设置写权限了。翻了翻它的Debug信息,渐渐怀疑到是相对路径与绝对路径的问题,因为默认是按照绝对路径的/sitemap.xml去查找的,但我们的免费Hosting,文件隐藏于深深的目录结构下。
  • 那上哪儿去找我们的根目录,在主机中的位置呢?回到Hosting面板,这里有我们所需要的:

  • 记下这个路径,在它后面再加上sitemap.xml,选择“自位置位置”,把文件完整路径填到插件配置

 

  • 保存配置,重建索引,就看不到那两行红红的字儿了。
分类: 建站 标签: , ,