【问题标题】:Remove 'webroot' from url从网址中删除“webroot”
【发布时间】:2015-02-13 10:41:19
【问题描述】:

这是我的项目结构:

htdocs
-abs (project)
    - apps
    -----admin
    -----pc
    -----client
    -----Common
    - webroot
    -----htaccess (1) (for pc)
    -----index.php (for pc)
    -----admin
    --------htaccess (2)
    --------index.php
    -----client
    --------htaccess (3)
    --------index.php

.htaccess (1) 内容:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ webroot/    [L]
   RewriteRule    (.*) webroot/$1 [L]
</IfModule>

htaccess (2 & 3) 内容:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

当我通过以下端口访问时:

http://localhost:8080/admin/

没关系。

但是当我不通过端口访问时:

http://localhost/abs/admin

重定向到

http://localhost/abs/webroot/admin

我想从

中删除“webroot”

http://localhost/abs/webroot/admin

我该怎么做?谢谢!

【问题讨论】:

    标签: php .htaccess cakephp


    【解决方案1】:

    不应该是这样吗

    <IfModule mod_rewrite.c>
       RewriteEngine on
       RewriteRule    ^$ app/webroot/    [L]
       RewriteRule    (.*) app/webroot/$1 [L]
    </IfModule>
    

    并使用 cake 路由创建管理 URL,它与 htaccess 无关

    【讨论】:

    • 谢谢,但是网站已经发布了。所以我不能改用蛋糕路由。
    • @Bàn Chân Trần 你试过我提到的 htaccess 代码吗?
    猜你喜欢
    • 2013-12-26
    • 2014-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多