欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

请教个MVC模式下的问题。求各位帮忙啊

程序员文章站 2022-06-14 15:36:07
...
MVC 链接 根目录 最近在学习MVC模式开发。现在遇到个问题。我使用Smarty来当做V的。我整个网站是放在。WWW/ECHO 目录下面的。就出现个问题,比如我在链接的时候,不能直接填写 control/method这样的链接。而是需 /echo/control/method 这样才能行。如果不这样的话。就会出现一个问题、比如我当前的页面是localhost/echo/index ,我默认的控制器和方法都是index。我用这个页面来链接到文章页面。用访问就可以访问到。但是如果我首页加上了方法名称,就是成为了。localhost/echo/index/index .在用上面的那个链接去访问文章页面就会出现localhost/echo/index/article/index 这样的地址了。。请问要怎么解决这个问题呀。我是小白,希望大神帮个忙啊

回复讨论(解决方案)

./index.php/controller/action

./index.php/controller/action
不是我是用.htaccess把index.php给隐藏了的。是不是重写URL出了呀。有没有办法重写我的链接,把我的更目录定位到/echo/啊。当然了。如果我整个网站是放在、www/这个网站根目录下,可能就没有这个问题了。。但是目前这样应该也是有解决办法的吧?额

那就得看你的站点目录设置了。

那就得看你的站点目录设置了。 什么意思啊。怎么设置呀。RewriteBase /echo
是这个吗

在网站根目录的 .htaccess 中指派 url 到 echo
RewriteRule ^(/?)(.*)$ /echo/$2 [PT,L]

在 echo 目录中 .htaccess 做项目映射
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

在网站根目录的 .htaccess 中指派 url 到 echo
RewriteRule ^(/?)(.*)$ /echo/$2 [PT,L]

在 echo 目录中 .htaccess 做项目映射
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
这样确实可以啊。但是就访问不到其他的咯哦。。。

在网站根目录的 .htaccess 中指派 url 到 echo
RewriteRule ^(/?)(.*)$ /echo/$2 [PT,L]

在 echo 目录中 .htaccess 做项目映射
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
或许。。根本就是我考虑多了?实际这样的应用不多吧?就是说大部分网站都是放在根目录下。而且不会再一个根目录下存在两个网站?

在网站根目录的 .htaccess 中指派 url 到 echo
RewriteRule ^(/?)(.*)$ /echo/$2 [PT,L]

在 echo 目录中 .htaccess 做项目映射
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
诶。版主大哥,对学习MVC有没有建议啊。或者有没有资源让我观摩学习下啊。有木有写过的小项目来学习学习啊。