我不知道这样的事情是否可行,但让我们试一试。在过去(三年多前),我在一个 MVC 教程中了解了这样的解决方案(不知道它到底是怎么回事)。
目录结构
- 网络根/
- 包括/
- 配置/
- 上市/
- 图片/
- js/
- css/
- 索引.php
- 初始化文件
我想做的是
当用户访问http://www.mysite.com/a/b/c/
时,将所有请求重定向到/public/index.php
页面。即,对网站的所有请求都将通过页面,/public/index.php
除了和目录,它们位于.images/
js/
css/
public/
此外,http://www.mysite.com/includes/
将重定向到index.php
页面,并获取includes/
为$query
.
Index.php 页面
<?php
// get init file from webroot directory, which will load all required php files.
define ('ROOT', dirname(dirname(__FILE__)));
require_once (ROOT . 'init.php');
// get query from url (here, $query = "a/b/c/")
if(isset($_GET['q'])) {
$query = $_GET['q'];
}
// insert images, css etc. resource
echo "<img src='http://www.mysite.com/images/foo.jpg' />";
echo "<script src='http://www.mysite.com/js/bar.js'></script>";
?>
这对于使用 web 托管的人很有用,它不提供对 webroot 的一步目录访问。
编辑
好的,我找到了我得到这个概念的网站。查看根目录和公共目录中使用的两个 .htaccess 文件。链接到 MVC 教程