如何通过页面重定向完成此操作?

时间:2012-02-15 19:27:01

标签: php url-routing

我有一个修订网站,它有多个学校科目的东西。我开始开发主题页面,这些主题页面仅包含该主题。例如物理页面

无论如何,我要做的是让人们输入www.myWebsite.com/historywww.myWebsite.com/ict - 或者说什么。然后他们会被重定向到相应的页面。

从那听起来很简单,我只想在我的public_html主目录中放一个名为history.php的文件,对吗?

但是我的主目录是超级组织的,所有内容都在漂亮的子文件夹中。我想要的是一个名为“subject”的子文件夹中的所有主题页面(富有想象力的名字:p)。

如何将这些页面放在子文件夹中,但仍允许用户通过上面的URL示例访问它们?

4 个答案:

答案 0 :(得分:1)

你必须为此重写网址。 google out mod_rewrite,你会得到这些例子。

答案 1 :(得分:1)

如果您在Apache下运行,mod_rewrite可能是实现此目的的最直接方法。

http://httpd.apache.org/docs/current/mod/mod_rewrite.html

基本上在根目录中创建一个.htaccess文件,将URI段映射到“subject”目录中相应的php文件。

答案 2 :(得分:1)

我认为这是您可以使用mod_rewrite的情况,因此您使用的网络服务器会将用户重定向到适当的目录。您可以手动或动态使用正则表达式保留重写列表。

答案 3 :(得分:1)

执行此操作的一个好方法是使用前端控制器。您可以通过htaccess将所有请求重新路由到一个文件(通常是index.php),然后从那里获取URI(/ itc,/ history等)并使用它将请求定向到相应的脚本。

检查一下,应该让你入门。 http://www.technotaste.com/blog/simple-php-front-controller/

一旦弄明白,您将需要比较动态和静态调用之间的差异。欢呼声。