【问题标题】:Making ExpressionEngine .htaccess allow commenting on index.html使 ExpressionEngine .htaccess 允许对 index.html 进行评论
【发布时间】:2010-07-23 03:11:53
【问题描述】:

我遇到了一个关于 ExpressionEngine 的非常奇怪的问题。我有一个实时测试站点here

基本上,如果您尝试对索引的“今日问题”发表评论,您将获得正确的重定向,但评论永远不会进入数据库。

如果我删除我的 .htaccess 并在我的控制面板中将网站的索引页面设置为 index.php,那么一切都很好。但是删除 .htaccess 和 index.php 后,事情就变得混乱了。

这是我的 .htaccess 文件的 cmets:

RewriteEngine on 
RewriteCond $1 ^(weblog|member|search|site|rss|search|contact|show|commentary|include|about|blog|tags|preview|P[0-9]{2,8}) [NC] 
RewriteRule ^(.*)$ /skad/index.php?/$1 [L]

任何解决此问题的提示或我可能出错的想法?如果有任何帮助,您可以查看screenshot of my folder structure

非常感谢您提供的任何答案或简单的帮助。

更多:此外,这里还有 successful post on a blog entryfailing post on the index 的标头。

更新:我最近确实发现了一些奇怪的东西。使用相同的后端设置:backend settings http://droplr.com/1sMXc9+ 和相同的代码:identical code http://droplr.com/1sN09A+

我将 http://localhost:8888/skad 作为一种表单操作,将 http://skadaddlemedia.com/v2/v2/index.php 作为另一种表单操作。

此时,我完全不知道发生了什么。

【问题讨论】:

    标签: php apache .htaccess mod-rewrite expressionengine


    【解决方案1】:

    “?”在 RewriteRule 中的 index.php 之后表明您在将 PHP 作为 CGI 脚本运行的服务器上,因此需要“强制查询字符串”,对吗?这可能是问题中问题的辅助,但有这个要求会使事情复杂化。看起来您是在 Site5 托管的...我对他们没有经验,但您可以尝试此处建议的解决方法:http://expressionengine.com/wiki/Workaround_for_Forced_Query_Strings/

    【讨论】:

    • 嘿 Ty,所以我的预感是这是辅助性的。明天我会试一试,但考虑到 cmets 不在索引上时工作正常。我猜可能还有另一个潜伏的错误。但我一定会试一试,让你知道!
    • Ty,只是一个更新,这对我的问题没有帮助。当从子域移到根域时,所有突然的评论都很好。我仍然希望您或任何人的帮助找出为什么这在子域上不起作用。
    【解决方案2】:

    尝试将[L] 更改为[L,QSA] 看看是否有帮助。

    【讨论】:

      【解决方案3】:

      我不确定,但我认为 CI 和 EE 与 htaccess 的工作方式几乎相同,因此这可能会对您有所帮助。它是由一位名叫 Ethan 的 CI 大师写的,不记得姓氏,但他在 CI 社区中非常活跃。无论如何,您的 HTACCESS 文件的方式已经被真正放弃了,新的方式要容易得多,而且您不必说明排除的文件夹,这是自 MVC 或任何框架的用户切片面包以来最好的事情,我只是爱它。

      # Customized error messages.
      ErrorDocument 404 /index.php
      
      # Set the default handler.
      DirectoryIndex index.php
      
      # Various rewrite rules.
      <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php/$1 [L,QSA]
      </IfModule>
      

      我可以向你保证,如果这是一个 htaccess 问题,这个 bugger 会修复它,但最重要的是你不必对它做任何事情,只需将它放入,你永远不必再次编辑它,我发誓。像夏天的炸鸡一样好吃!

      记住首先测试它,只需将它放在你当前的位置上,你就不需要你承诺的所有疯狂的其他东西。

      【讨论】:

      • 不幸的是,我也没有运气。我用一些新的细节更新了我的问题。非常感谢您的帮助。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-10
      相关资源
      最近更新 更多