使用htaccess从slug url进行路由

时间:2014-05-10 18:42:05

标签: php apache .htaccess routing

我目前正在编写一个PHP应用程序,并且我一直使用框架并且总是在较大的项目中工作,但是对于这个特定的项目,我不做任何事情。如果我去的话,我遇到了一个问题:

http://localhost/project

它运行index.php文件很好,但是如果我想去

http://localhost/project/test

我仍然希望它运行index.php文件,并从那里找出如何处理'test'部分。相反,我得到了404.我该怎么做呢?

我使用Apache作为我的服务器,是否需要在.htaccess文件中进行更改?我很擅长编辑该文件并发现大多数教程都没有说过如何做到这一点,但它似乎是一个非常不可或缺的事情

编辑:

这就是我的htaccess目前的样子

Options +FollowSymLinks
IndexIgnore */*
# Turn on the RewriteEngine
RewriteEngine On
#  Rules
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php

1 个答案:

答案 0 :(得分:1)

尝试将.htaccess文件更改为:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)(.*)/?$ index.php

作为检查其是否有效的初始解决方案