Htaccess和宁静的应用程序

时间:2012-11-01 19:57:03

标签: .htaccess restful-url

我不是很擅长htaccess,所以在这里寻求帮助。我有一个运行在

的网络应用程序
myserver.com/index.html

我将请求(GET,PUT,DELETE)发送给控制器:

myserver.com/controller.php?id=5

有没有办法可以使用htaccess通过像

这样的网址提交
myserver.com/controller/5

我玩过htaccess,但在尝试点击index.html页面时却设法创建了500个错误...

1 个答案:

答案 0 :(得分:1)

如果您发送的请求如下:myserver.com/controller/5并且您想使用mod_rewrite将其重写回/controller.php?id=5,则可以使用以下规则:

RewriteEngine On
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^/?([^/]+)/([^/]+)$ /$1.php?id=$2 [L]

或者不那么一般:

RewriteEngine On
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^/?controller/([^/]+)$ /controller.php?id=$1 [L]