前言

感谢您阅读无忧主机(www.51php.com)drupal系列官方技术文档翻译教程,今天从drupal官方论坛找了一个关于drupal定制网站404错误提示页面的一个官方说明教程,对于常用配置功能,无忧主机(www.51php.com)将官方原文翻译如下。

译文:

网络状况差或者其它非正常状况的站点,访问网站很容易造成页面设计内容中的关联文件丢失,而在这个时候几乎有用过以php为基础语言的开源系统的站长们都知道在站点所在php虚拟主机中,利用linux的rw模块,定义伪静态规则文件.htaccess文件中加入如下正则表达式:

#Customized 404 error messages

ErrorDocument
404 /index.php

就能处理页面丢失404错误,也就是我们常说的404错误提示页面,不过这种方式,仅仅适用于纯linux环境下php虚拟主机,(译注:在使用无忧主机系列免备案php空间的站长,您可以通过这篇“无忧主机用户如何定义网站404错误页面”技术文档,详细了解,如何使用.htaccess文件来定制输出您网站的404错误提示页)而在这里我们要介绍drupal处理.js、.css、.jpg、.gif之类的404错误,而不是drupal内容(content)的错误。

注释——缺陷:我们运用这种技术在网站的有缺点的,那就是这种错误页面比我们定义普通的404页面需要更多的流量,占用更多的带宽,导致页面显示时间延迟增长。如果您真的需要做这样的404,方法是有的,但尽量在您能够控制的范围内。首先我们要用在.htaccess文件中加入如下代码来确定到底是哪一种类型的文件出现了错误。

<FilesMatch
“\.(gif|jpe?g|png|s?html|css|js|cgi)$”>

ErrorDocument 404 default

</FilesMatch>

当然我们还要加入:

RewriteCond%{REQUEST_FILENAME} !\. (gif|jpe?g|s?html|css|js|cgi)$;

RewriteRule ^(.*)$index.php?q=$1 [L,QSA];

在加入上列代码后我们可以很好地看到了丢失的CSS、JS等文件,这种处理最小化了数据库加载和帮助提升站点boost的性能。

提醒:这里有个问题就是当.png文件的块(block)用了这种方法后会影响到系统模块里的system_test()函数。而且这样配置后我们也失去了使用clean_urls配置的权利,这种方法最好用在维护站点的过程中,可以让我们更好的找到出现问题的模块,而不是让它在商业的站点上运行,您可以参考,另一篇译文“无忧主机原创drupal技术文档翻译:使用Clean URLs(简洁链接)实现Drupal伪静态”了解更多关于这方面的知识。

通过上面的配置,使我们不能在虚拟主机上的运用clean_urls,如果我必须要使用clean_urls,这该怎么办呢?我们就可以使用下列代码来改写:

# Rewrite current-style URLs of the form ‘index.php?q=x’.

#(注释:这里就是重写现在’index.php?q=x’.的这种地址形式。)

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

译文完

今天无忧主机(www.51php.com)给大家带来的drupal处理一些特殊文件404的介绍就是这些了,因为是直接翻译的,很多地方确实翻译的不是非常准确,官网上也不是百试百灵,希望我们的翻译的文档,能给你在维护drupal网站的时候,带来帮助和启发。下面附一张drupal官网的.htaccess的部分代码供大家参考。

image002 150x150 无忧主机原创:drupal官方技术文档翻译:Drupal7.x设置404提示页和特殊文件类型处理

附译文原始URL地址:

http://drupal.org/node/76824?page=1

http://drupal.org/node/56773

 

纯Linux环境下高端免备案【香港独立IP地址】 php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名

本文地址:http://www.51php.com/drupal/6959.html

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读: