linux中Drupal网站出现空白页面解决方案——目录用户及权限设置

你在这里

linux中Drupal网站出现空白页面解决方案——目录用户及权限设置

今天将一个Drupal小站上传至centos服务器上,导入数据库后,访问站点首页居然是一片空白,真是奇了怪了!只好开始排查问题:
1.  首先查看apache错误日志文件/var/log/httpd/error_log,居然没有报错;于是有查看apache访问日志/var/log/httpd/access_log, 每次访问都除了几个重定向的301以外,都是返回的正常响应码200;这证实了代码运行是没有问题的。
2.  其次查看drupal在系统日志中报告的信息,在linux中使用如下命令:
     tail -n 100 /var/log/messages
查看到有如下错误信息:
File temporary://fileqRe6i1 could not be copied, because the destination directory public://languages is not configured correctly.
An error occurred during creation of the JavaScript translation file for the language Chinese, Simplified
The directory sites/XXXXX.com/files does not exist and could not be created.
看来是目录访问出错,这下才想起来刚才上传了站点以后,忘记修改站点的用户名和权限了,这导致该站点目录下的主题目录无法被访问,因此模板page.tpl.php无法加载,从而出现空白页面。于是赶紧用以下命令完成配置:
cd SITES_DIR
chown -R USER_NAME:APACHE_GROUP .
find . -type d -exec chmod u=rwx,g=rx,o= '{}' \;
find . -type f -exec chmod u=rw,g=r,o= '{}' \;
find . -name "*.txt" -exec chmod u=rwx,go= '{}' \;
chmod 750 SITES_DIR/sites/XXXXX.com
cd   SITES_DIR/sites/XXXXX.com
chown -R APACHE_USER:USER_GROUP files
find . -type d -exec chmod u=rwx,g=rwx,o= '{}' \;
for d in ./files; do
  find $d -type d -exec chmod ug=rwx,o= '{}' \;
  find $d -type f -exec chmod ug=rw,o= '{}' \;;
done
 
其中,大写内容替换成对应系统中的实际名称:
SITES_DIR ——站点存放的实际目录
USER_NAME——站点维护使用的linux用户名
USER_GROUP——站点维护的用户名所在的用户组
APACHE_USER——apache用户名
APACHE_GROUP ——apache用户组
XXXXX.com——多站点方式下,sites中的网站目录
 
运行完上述命令后,网站终于如期出现了酷
著作权归作者所有。商业转载请联系本站作者获得授权,非商业转载请注明出处 ZZKOOK

您可能感兴趣的文章

登录以发表评论

评论

觉得会有帮助

 
147
夏秋冬的头像

有没有人和我一样,不愿意告诉别人自己搞不懂,好纠结。。。

 
142
必胜的心的头像

心灵鸡汤少喝点,有用知识多学点。

 
143
红茶的头像

感觉应该有用。

 
141
lucky的头像