重定向管理员/???到admin.php/???使用.htaccess


Redirecting admin/??? to admin.php/??? with .htaccess

这是我目前的htaccess文件:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /blog/
ErrorDocument 404 /blog/404.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)'.html$ post.php/$1.html
RewriteRule ^index$ index.php
RewriteRule ^archives$ archives.php
RewriteRule ^about$ about.php
RewriteRule ^search$ search.php
RewriteRule ^feed$ feed.php

目前,如果我转到domain.com/blog/*.html,它将重定向(在后台)到domain.com/blog/post.php/*

我想几乎复制这个,但我不确定所有这些正则表达式的东西。

我希望也能够转到domain.com/blog/admin/*,并使其重定向(在后台)到domain.com/blog/admin.php?p=*

如果你们能帮我,我真的很感激!

感谢

类似于:

RewriteRule ^/?admin/(.*)$ admin.php?p=$1&%{QUERY_STRING} [L,NC]

会成功的。

这很快就完成了,而且没有经过测试,但它给了你想法。你把这个放在上面:

RewriteRule ^(.*)'.html$ post.php/$1.html

编辑:删除了重写秒,因为我刚刚意识到它是无用的

编辑:也添加了查询字符串,因为您现在实际上正在转换_GET。

将多视图添加到.htaccess:的第一行

Options FollowSymLinks MultiViews

然后,重新启动apache。它应该将admin指向admin.php。

注意:不要在同一目录中有多个具有相同名称和不同扩展名的文件。

http://httpd.apache.org/docs/2.2/mod/mod_negotiation.html