【问题标题】:TYPO3 extension real_url returns 404 on all pagesTYPO3 扩展 real_url 在所有页面上返回 404
【发布时间】:2013-10-31 12:47:26
【问题描述】:

假设以下页面树结构

  • 客户端1
    • 第 1 页
    • 第 2 页
    • 第 3 页
  • 客户端2
    • 第 1 页
    • 第 2 页
    • 第 3 页

默认情况下,TYPO3 会按 id /index.php?id=[pid] 显示页面

我正在尝试达到以下效果

/client1/page1

所以我遇到了 realurl 扩展,我确实设法使它工作,并且在设置后我在 url 中得到了预期的结果

config.absRefPrefix = client1/ 

在我的模板中的 setup.ts 字段中

realurl.basic.enableAutoConf = 1

在扩展的配置页面中

但是现在当我像这样/client1/page1 和 当我通过 id 访问它们时,我只得到没有任何 css 图像和 javascript 的内容 因为absRefPrefix 现在已添加到资源中

例如/client1/fileadmin/assets/images/logo.jpg

这张图有什么问题?

更新 1:

设置absRefPrefix = / 确实“修复”了一切,但是我现在没有满足客户的要求

客户的名字应该在这种格式的 URL 中 mysite.com/client1/page1

现在我看到mysite.com/page1

客户端名称被跳过,这是我在 absRefPrefix 中添加客户端名称的原因

【问题讨论】:

  • 因为你的config.absRefPrefix = client1/。图片的真实路径是 wwww.yoursite.com/fileadmin/assets/images/logo.jpg 问题:为什么不把client1和client2放在根目录下?您不必将 client1 作为 absRefPrefix,默认情况下 RealUrl 将使您的 Url 像 www.yoursite.com/client1/page1
  • 网址按预期和您描述的那样创建,但它们返回 404
  • 要解决这个问题,您需要将所有内容移到根目录下。 Realurl 与层次结构一起使用,因此将其设为层次结构 :)

标签: typo3 typoscript realurl


【解决方案1】:

就像我要问的“用户”...为什么不把所有东西都放在根目录下?

然后使用:

config.absRefPrefix = /
config.simulateStaticDocuments = 0
config.tx_realurl_enable = 1

更新1的答案: 检查页面 Client1 和 Client2,在页面属性,常规选项卡中:应不选中从发言 URL 中排除。如果根页面包含域并且客户端页面是真正的页面而不是不同的网站,则 RealUrl 应该默认创建您正在寻找的结构。

【讨论】:

  • 它们在根目录下,也许上面没有清楚地说明,但它们是。并且扩展似乎正在工作,因为 URL 现在按预期格式化 mysite.com/client1/page-1 等等。但是当我访问它们时,我得到 404 not found 也许它在 .htaccess 文件中的某些东西 URL 重写没有正确完成但我非常严格地遵循手册的说明
  • 1.页面属性行为选项卡中的根页面是否标记为“用作根页面”? 2. .htaccess 文件是否放在根文件夹中? 3、.htaccess文件是否有正确的文件权限?
  • 另外,尝试在扩展管理器配置页面中将 basic.autoConfFormat 设置为 PHP 源代码,看看是否效果更好。测试新配置时不要忘记清除所有缓存。
  • 1.是 2. 是 3. 可能。什么是正确的权限?
  • "chown www-data:www-data .htacces" 和 "chmod 644 .htaccess" 这应该可以。 (删除“”,cmets不会让我分开命令)我认为这是特定于ubuntu的,请检查您用于apache的用户组,假设您使用的是linux和apache?
猜你喜欢
  • 2013-08-28
  • 2019-09-10
  • 2020-08-21
  • 1970-01-01
  • 2020-05-12
  • 2017-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多