MVC HTaccess中的PHP路径


php path in mvc htaccess

我试图在mvc结构中制作菜单。问题是我在我的网络根目录中有一个子目录,例如:

本地主机/子目录/

但是当我单击我链接时,它会回到我的根。 菜单在模型(静态在 momment)中调用,在关联数组中调用,其中键是链接名称,值是路径名,如下所示:

 $this->viewModel->set("mainMenu",array("Forside" => "/home", "Hjælp" => "/help"));

I 在视图文件中调用它时:

        foreach ($viewModel->get('mainMenu') as $key =>  $values){
              echo '<a href="'. $values. '">' . $key . '</a> ';
        }

我的 .htaccess 文件:

Options +FollowSymLinks
RewriteEngine on

RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]

我试图用反斜杠建立链接,这不起作用。我试图使链接没有斜杠,因为我在本地主机/子目录/主页中工作,但是当我转到本地主机/子目录/主页/视图时,然后单击主页链接,它只是转到本地主机/订阅/主页/主页

我试过定义一个BASE_ROOT,剂量不起作用。定义我的DIRECTORY_SEPARATOR也一样,:(

对不起,我的英语不好,我真的希望有人能在这里帮助我。

保持链接绝对,即以斜杠开头:/home/help等。

/DocumentRoot/.htaccess中添加此规则:

Options +FollowSymLinks
RewriteEngine on
RewriteRule !^subdir /subdir/%{REQUEST_URI} [L,NC,R]

请记住,这在subdir的父目录中

试试这个

RewriteEngine on
RewriteRule ^(.*)$ /ocalhost/subdir/$1 [L]