Smarty输出空白的解决

这是去年10月份就遇到的问题,当时偶然解决了,并没有去想为什么会解决,到现在又遇到了。
具体表现:使用的是phrame + Smarty,把所有的页面响应都映射到index.php上去。在浏览器上看页面是一片空白,去年的解决方法是在命令行下使用php index.php,看到输出中有Smarty解析模板生成的HTML代码了,再去浏览器上看,页面正常。

但不能总是用这种方法来“激 活”页面显示。最后仔细调试一下发现问题出在权限上:Smarty编译解析templates目录下的模板文件,生成HTML代码,把生成的代码存储到 templates_c下面,然后就能正常显示。在命令行下运行 php index.php,也只是为了在templates_c下面产生生成的HTML代码,所以运行后就能“激活”显示。在浏览器中无论怎样刷新页面, templates_c下面都不会产生代码,所以显示就是一片空白。
在/etc/httpd/conf/httpd.conf文件中有这一行:
User apache
Group apache
http 服务器进程的uid是apache用户,而我的tempaltes_c目录是whb用户且目录权限是drwxr-xr-x。apache用户对这个目录没 有写权限,因此Smarty虽然解析了模板文件但是写不到templates_c下面去也是徒劳。解决方法就是改变templates_c目录权限使得 apache用户可以写,或者把这个目录的属主变成apache用户。

没有看到问题的本质的时候很多现象都联系不起来很多技术都只能靠死 记硬背,应该坚信技术的出现必然是为了解决问题,不理解这种技术是因为没有看到要解决的问题,而且我们使用的技术必然是当时从众多能够解决问题的方法中选 出来的最简单的那一个,感觉到难或者感觉有矛盾,是因为站的不够高。正如发现了自然数解决不了的问题,说明自然数不够“一般”,必须借助更一般的整数或者 有理数才可能解决这个问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值