2014-01-21 47 views
1

我想让当前读取AA网址:为什么干净网址的.htaccess代码不工作?

www.site.com/events/event.php?event_id=_n_ (其中n是一个数字,自然)

阅读简单:

www.site.com/events/ 

我有下面的代码在我的.htaccess文件

RewriteEngine On 
RewriteRule ^events/([a-zA-Z0-9]+)$ event.php?event_id=$1 

但它似乎没有任何区别,无论我是否把fil e在根目录或events目录中。有任何想法吗?

+1

如果你让'www.site.com /事件/'你怎么会得到'event_id'在'event.php'? – anubhava

+0

这个.htaccess是在根目录还是在事件目录中? – Dracris

+0

啊,那不行吗?它必须是“www.site.com/events/event”吗? – user3181236

回答

0

将在DOCUMENT_ROOT/events/.htaccess文件这条规则:

RewriteEngine On 
RewriteBase /events/ 

RewriteCond %{THE_REQUEST} /event\.php\?event_id=([0-9]+) [NC] 
RewriteRule^%1? [R=301,L] 

RewriteRule ^([0-9]+)/?$ event.php?event_id=$1 [L,QSA,NC] 
+0

恐怕再次没有任何区别。可能某些服务器设置阻止它的工作?我有一些301重定向在那里工作正常。 – user3181236

+0

是的,他们可以有所作为。此规则必须作为第一条规则放置在.htaccess顶部。 – anubhava

+0

好吧,我已经在顶部向他们致敬 - 没有什么区别... – user3181236