【问题标题】:realurl generates entries without cHashrealurl 生成没有 cHash 的条目
【发布时间】:2017-01-31 20:54:50
【问题描述】:

我有一个 piBase 扩展,它有一个记录列表和一个详细信息页面。 首次调用列表时,一切正常,realurl(2.0.15 版,TYPO3 7.6.10 版)使用 cHash 参数创建详细页面的 url,例如

cHash=dc3409cee49ff80a6b8173357a474bd3&id=168&tx_myext_pi1[event]=1062

但是当截断所有四个realurl表,清除前端缓存并直接访问记录的详细页面时,realurl会为该页面创建没有cHash的url:

id=168&tx_myext_pi1[事件]=1062

在 Extbase 扩展(例如 EXT:news)中尝试相同操作时,我收到 404 错误,并且生成的 url 也没有 cHash:

id=102&tx_news_pi1[news]=speaking-path-of-news

为什么缺少 cHash 参数?这是一个错误吗?

【问题讨论】:

    标签: php typo3 realurl


    【解决方案1】:

    Realurl

    【讨论】:

    • 但是没有cHash生成页面是不能接受的。这会导致错误的页面内容。如果请求页面,realurl没有cHash参数,显示404页面或者错误信息不是更好吗?
    • 不,它不会因为页面也可以在没有 cHash 的情况下工作。例如,搜索 GET 表单不使用 cHash。
    【解决方案2】:

    在 realurl 2.0.15 中,cHash 被安全方面禁用。 您可以更新到 realurl 2.1.x

    【讨论】:

    • realurl 2.1.2 没有解决问题,这些url仍然是在没有cHash参数的情况下创建的。
    • 是的,2.1.4版好像解决了这个问题,感谢新版!
    • 对不起,问题没有解决。表“tx_realurl_urldata”中仍然有没有 cHash 参数的条目。我在我的 piBase 扩展中实现了一个解决方法: if(!$GLOBALS['TSFE']->beUserLogin && !t3lib_div::_GP('cHash')) { $GLOBALS['TSFE']->pageNotFoundAndExit('Record不存在。'); }
    • 第一,realurl 从不生成 cHash。 TYPO3 生成 cHash。如果你得到的条目没有 cHash,这意味着你的代码没有要求 TYPO3 创建 cHash。检查您的代码,看看您是否在错字链接中添加了useCacheHash = 1。责任在用户!
    猜你喜欢
    • 2014-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 2020-10-17
    • 1970-01-01
    • 1970-01-01
    • 2021-08-19
    相关资源
    最近更新 更多