bo-blog安装时出现“Cannot find template. You may need to reinstall the program.”的解决办法

pop:一个会员提的问题,主要还是权限问题吧。仔细看一下,修改一下。

Cannot find template. You may need to reinstall the program.
问题的提出:
1、网站迁移空间时各项都正常的网站,数据库和网站所有文件压缩后放到新服务器上,调试运行时,出现Cannot find template. You may need to reinstall the program.
2、重新下载最新版本,在服务器上新开空间,新建数据库,用户给予完全控制权限,安装。还是出现Cannot find template. You may need to reinstall the program.
权限不存在问题,template文件内容没有丢失。我比较郁闷的是 直接转移都出现这个问题。

解决办法:
1、检查data文件加,匿名访问帐户是否有写入修改权限。
2、检查data文件夹里的mod_template.php(模板配置)文件,确保template文件夹里有这个模板。如果没有,请复制原始安装文件里的template文件夹内容覆盖;或者修改mod_template.php,让其对应。
3、给予匿名访问帐户blog目录的上级目录users组的默认权限(读取、列出文件夹目录、读取和运行)。

提示:
1、blog 安装帮助文件里有这么一句:警告:如果使用的是Windows服务器,建议不要安装在(Web)根目录下。分析一下,应该是为了防止出现Cannot find template. You may need to reinstall the program.问题吧。此问题出现条件比较蹊跷,如果不对web目录使用新建匿名访问帐户访问的话,就可能不出现错误。
2、在问题提出里我说到,“权限不存在问题”是确切的,在正常情况下不需要对web目录的上级目录设置网站匿名访问用户权限;也就是说正常情况下如此设置权限就能满足网站的运行需要。
3、对于那些没有对服务器操作权限的虚拟空间用户此方法只能让服务器管理员协助解决了。

------------------------------------------------------
另外的解决办法:

给网站目录上级,加了Users的读取权限,只应用于该目录后,问题解决:)

还有就是不要在服务器上用记事本打开文件修改,因为程序是UTF-8的,用记事本一保存,UTF-8的标识可能就没了。程序在某些情况下就会出错。

另外,bo-blog自带的URL优化的rewrite似乎无法直接在iisrewrite上使用,我主要是把路径前加了/。

如第一条规则:
RewriteRule ^post/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ read.php?entryid=$1&page=$2&part=$3 [QSA,L]
改成
RewriteRule /post/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ /read.php\?entryid=$1&page=$2&part=$3 [L]
就可以正常使用了。破解版的IISrewirte 1.3不支持QSA,所以去掉了。

From:
http://www.9enjoy.com/post/278/
http://www.5ihll.cn/read.php/1788.htm

Related Posts