我正在尝试使用子目录作为我的某个域的根文件夹.使用.htaccess,我使用mod_rewrite来完成工作.这是我已有的代码:
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteCond %{REQUEST_URI} !^/domain/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /domain/$1
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteRule ^(/)?$ /domain/index.php [L]
Run Code Online (Sandbox Code Playgroud)
这可以完成工作,但不完全.例如:
如果我转到http://domain.com/,它会index.php从domain文件夹中显示.如果我转到http://domain.com/test/,它将显示该test文件夹的内容(或403).但如果我转到http://domain.com/test(使用快捷方式,甚至显示文件夹),我会被重定向到http://domain.com/domain/test/.
这不应该发生.如果有的话,它要么从.htaccess做一个掩码(如果正在使用测试),要么只是转到http://domain.com/test/.我试图找到解决这个问题的方法,但事实并非如此.所以我正在寻求你的帮助!:)
非常感谢任何和所有的帮助.
对于PHP MVC应用程序,index.php文件和前端控制器的作业有什么区别?是前控制器index.php,还是在单独的文件中?我如何将两者分开并让它们一起工作?前端控制器应该是一个类(或者像它自己的实体一样)吗?(如果是这种情况,那么index.php会实例化前端控制器吗?)
我知道他们必须"设置环境",其中包括定义一些常量等,但是什么呢?( - 自动加载器,调试东西等)
我已经看到了这一点:MVC与前端控制器混淆,但这并没有解决index.php前端控制器之间的区别问题.