EZ Publish/EZ Publish URL 翻译

来自站长百科
跳转至: 导航、​ 搜索

EZ Publish | EZ Publish安装与卸载 | EZ Publish的使用 | EZ Publish常见问题 | EZ Publish其他

本条目阐述了eZ Publish 中可以使用的不同类型的URL 以及URL 翻译如何工作。默认情况下,eZ Publish可以处理两种URL:

• 系统URL

• 虚拟URL

系统URL[ ]

系统URL 告诉eZ Publish 应该运行哪个模块并执行哪个视图。它可能包含传送给视图的附加的参数/值。每个系统URL 都遵循相同的结构并且可以被分割为以下部分:

• 模块名

• 视图名

• 视图参数

视图参数是可选的且可以由有序参数和/或无序参数构成。在“模块和视图”章节有完整的介绍。以下的模型演示了不同URL 部分的序列。

http://www.example.com/index.php/<module>/<view>/[<ordered_view_parameters>]/
[<unordered_view_parameters>]

UrlFY1.jpg

下例演示了典型的系统URL:

 http://www.example.com/index.php/content/edit/13/3

这个URL 要求eZ Publish 运行"content"模块并执行"edit"视图。"13"和"3"是将要传送给视图的参数。注意,确切的URL 格式取决于“访问方法”和WEB 服务器的配置方法。例如:WEB 服务器可以被配置以隐藏"index.php"。

虚拟URL[ ]

虚拟URL(也被称为URL 别名或友好的URL)其实只是现存的系统URL 的别名。虚拟URL 更友好,更容易记忆且有时比系统URL 更短。系统URL 揭示了很多有关eZ Publish 被要求做何种处理的信息,虚拟URL 却不显露任何系统级别的信息。虚拟URL 不能如系统URL 一样分解。下例演示了典型的虚拟URL:

 http://www.example.com/company/about

系统中其实有两种类型的虚拟URL,一种是系统自动生成的,另外一种是由站点管理员手动创建和维护的。然而,所有的虚拟URL 都会被等同处理。

从3.10 版本,系统开始支持“多语言虚拟URL ”。系统在一张由三个字段的数据库表中保管URL:

UrlFY2.jpg

使用上表中虚拟URL 的真实地址可以如下:

 http://www.example.com/company/about

根据上表,虚拟URL 会被系统在内部翻译为如下URL:

 http://www.example.com/content/view/full/46

两个URL 都是正确的且会生成相同的输出,在本例中为节点46 的全视图。当使用虚拟URL 时,重定向/映射会在系统内部进行,因此用户不会经历重定向或是页面重载等问题。Language mask(语言掩码)在系统内部使用,被用来标记URL 别名所用的语言(与内容对象的语言掩码算法相同)。如果站点管理员为"content/search"创建一条虚拟URL,系统会在上表中添加如下记录:

UrlFY3.jpg

实际的虚拟URL 为:

 http://www.example.com/findme

根据上表,这个URL 会在系统内部被翻译为:

 http://www.example.com/content/search

自动虚拟URL 的生成和维护[ ]

每次对象被发布,系统都会为对象的每个节点重新生成一个虚拟URL。如果对象存在于多种语言中,系统会为每种翻译生成虚拟URL。节点URL 的生成是基于节点在节点树中的位置和节点对象的对象名。节点虚拟URL 的生成完全由系统处理且不能在管理界面修改。下图演示了对象,节点以及对应的URL。

UrlFY4.jpg

  • 上图清楚地演示了虚拟URL 是如何被生成的。对于每个节点,系统生成一个路径(由"/"分割)。路径中的字符串为节点祖先节点所对应对象的名称和目标节点本身对应对象的名称。
  • 在eZ Publish 3.9 版本之前,URL 变换规则更严格且之支持ASCII 字符(小写拉丁字符"a"到"z",数字和下划线)。
  • 特殊符号被转换为下划线且特殊字符由系统内建的字符翻译功能翻译。
  • 例如:挪威字符"æ","ø"和"å"会被翻译为"ae","oe"和"aa"。如果系统要生成一个已经存在的虚拟URL,它会在新URL后简单地追加一个下划线从而消除重复URL 的风险。
  • 自3.10 版本开始,可以在URL 中支持Unicode 且字符翻译不再需要因为大部分字符都允许出现在虚拟URL 中。
  • 如果相同位置有两个节点的名字相同或几乎相同,系统会在新节点的URL 后添加数字(如:"company","company2","company3"等等)。如果对象的名称改变了,系统会自动修改对应节点的虚拟URL。此外,一条内部重定向记录会被创建。
  • 这条记录可以确保旧的URL 仍然有效。旧的虚拟URL 会一直有效,直到某个节点用到了相同的URL。
  • 在这种情况下,重定向记录会被删除。

手动虚拟URL[ ]

在管理界面中(全局别名与节点URL 别名)可以手动添加,编辑与删除虚拟URL。更多内容参阅“EZ Publish的使用”中与管理URL 别名相关的内容。此外,也可以创建“基于通配符的URL 转发”。(在实现多语言URL 功能时,这个特性被从3.10.0 版本中删除。不过又在随后的版本中重新加回了系统)

参考来源[ ]

EZ Publish使用手册导航

EZ Publish安装卸载

EZ Publish正常安装 | EZ Publish手动安装 | EZ Publish自动安装 | EZ Publish安装向导 | EZ Publish虚拟主机设置 | EZ Publish使用扩展 | EZ Publish的卸载

EZ Publish的使用

模板使用:

EZ Publish节点模板 | EZ Publish系统模板 | EZ Publish Pagelayout页头信息 | EZ Publish Pagelayout变量 | EZ Publish 模板注释 | EZ Publish 模板变量类型 | EZ Publish 模板变量用法 | EZ Publish 调查数组和对象 | EZ Publish 模板控制结构 | EZ Publish 函数与操作符 | EZ Publish URL处理 | EZ Publish 内容提取 | EZ Publish 模板重设系统
系统功能: EZ Publish 系统记帐 | EZ Publish 策略功能 | EZ Publish 多语言使用(一) | EZ Publish 多语言使用(二) | EZ Publish 集群的使用 | EZ Publish 安装包的使用 | EZ Publish Cronjob脚本的使用 | EZ Publish 多货币功能 | EZ Publish 通知功能
其他功能: EZ Publish 增值税(VAT)系统 | EZ Publish 改进的商品配送系统 | EZ Publish 多语言URL别名 | EZ Publish 登录后高级重定向 | EZ Publish 检索引擎 | EZ Publish WebDAV | EZ Publish 视图缓存

EZ Publish常见问题

EZ Publish 安装常见问题 | EZ Publish 使用常见问题

EZ Publish其他

EZ Publish内部结构 | EZ Publish内容与界面 | EZ Publish内容管理(一) | EZ Publish内容管理(二) | EZ Publish配置模型 | EZ Publish模块与视图 | EZ Publish URL 翻译 | EZ Publish 界面 | EZ Publish访问控制 | EZ Publish网络商店 | EZ Publish工作流