【问题标题】:.htaccess - redirecting ONLY root (Codeigniter / WordPress).htaccess - 仅重定向根目录(Codeigniter / WordPress)
【发布时间】:2014-06-21 15:33:30
【问题描述】:

我目前在文件夹 /ci/ 中使用 codeigniter 创建了一个站点

我目前在根目录下安装了 WordPress。

我想要的是网站与 CI 一样正常运行,但对于主根 URL (www.example.com),我希望它加载 Wordpress 网站(因此我将它安装在根目录中)

我正在尝试在 .htaccessIGNORE 主站点中将其重定向到 CI:

RewriteCond %{REQUEST_URI} !^/

但正如预期的那样,这意味着所有其他 CI 链接(例如 http://www.example.com/testhttp://www.example.com/ci/test)不再起作用。


这是我当前的 .htaccess 文件:

Options -Indexes +SymLinksIfOwnerMatch 
RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_URI} !^/
RewriteCond %{REQUEST_URI} !^/ci/
RewriteCond %{REQUEST_URI} !^/wp-admin/?$
RewriteCond %{REQUEST_URI} !^/wp-content/?$
RewriteCond %{REQUEST_URI} !^/wp-includes/?$

RewriteRule ^(.*)$ /ci/$1 [L]

【问题讨论】:

    标签: php wordpress .htaccess codeigniter mod-rewrite


    【解决方案1】:

    我假设 www.example.com 是 wordpress 网站。在 wordpress 站点中,一个名为 CI 的文件夹包含一个 CI 网站。

    好的。所以请按照以下步骤操作: 首先允许您的 wordpress 站点中的 /CI 目录。包括这一行

    RewriteRule ^CI/(.*)$ /CI/$1 [L,QSA]
    

    并且在 CI 站点中,您可以在 htaccess 中添加这一行。

    RewriteBase /CI
    

    希望这能有所帮助。

    【讨论】:

    • 我试过这个,但只有example.com/ci 工作example.com/ci/testexample.com/test(这是我想要工作,不希望 ci 在 url 中)有一个 404 Not Found 错误跨度>
    • 这里的 test/ 是什么意思?请在此处提及您的目录结构以便更好地理解。
    • test 是 CI 中的控制器。我仍然希望 CI 中的所有控制器都能正常工作。我的目录是根目录下的 wordpress,根目录下的 CI 文件夹包含所有 CI 文件。
    • 我还希望 CI 中的控制器能够在没有 CI 的情况下工作。例如对于 CI 中的测试控制器,www.example.com/ci/test 我希望它也可以作为 www.example.com/test
    【解决方案2】:

    我不会说你想要的不能做,但是为了“让你的房子井然有序”,你应该把 /test 文件夹移动到 ci/test 并完成它。否则,您会混淆使用根目录的 WordPress 和使用 /ci 文件夹的 Code Igniter。

    【讨论】:

      猜你喜欢
      • 2012-12-18
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 2017-01-12
      • 1970-01-01
      • 2011-01-14
      • 2021-07-08
      • 1970-01-01
      相关资源
      最近更新 更多