隐藏URL中的目录名称

时间:2014-01-01 16:20:47

标签: php apache .htaccess

我网站的目录是:

localhost/

    includes/
        includes/initialize.php
        includes/user.php
        includes/session.php
        includes/database.php

    public/
        public/bootstrap/
        public/css/
        public/js/
        public/dashboard/index.php
        public/index.php

    .htaccess(first htaccess file)

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

我想让我的网址更整洁,例如

当我输入时:http://localhost我知道它会转到http://localhost/public/ 但网址仍为http://localhost

但问题是当我输入http://localhost/dashboard时 遗憾的是,我的浏览器上的网址为http://localhost/public/dashboard/

我不希望看到公开这个词。

我想我应该在公共目录下有另一个htaccess文件,但我不知道它的合适代码。

1 个答案:

答案 0 :(得分:0)

DOCUMENT_ROOT/.htaccess文件中试用此代码:

DirectoryIndex index.html index.php

RewriteEngine On

RewriteRule !^public/ /public%{REQUEST_URI} [NC,L]