2013-10-07 50 views
1

重写我有一个重写规则即时通讯为一个朋友创建一个小网站的问题该网站有他的员工的基本个人资料页和即时寻找一种方式来创建链接到Facebook风格链接。htaccess只有当有查询

我现在有

RewriteRule ^([^/]*)$ /staff_profile.php?staff=$1 [L] 

被重定向的所有页面,以staff_profile.php,我需要它只是重定向当链接输入为http://example.com/j.smith这将重定向到约翰·史密斯页,

但是当http://example.com/WhatEverPage.php被访问,我需要它来显示网页无法staff_profile.php

+1

这取决于何时'WhatEverPage.php'是一个真实文件,或者如果您将另一个请求重定向到另一个'.php'文件。如果存在'WhatEverPage.php',请查看_anubhava_的答案,否则您可以按照它们应该匹配的顺序查看'RewriteCond'或创建多个'RewriteRule'。 –

回答

2

您可以使用:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/?$ /staff_profile.php?staff=$1 [L,QSA] 

如果请求有效文件/目录,这将跳过RewriteRule以上。