2013-06-30 69 views
-1

我试图做一些重写我的.htaccess文件.htaccess的冲突

所有我试图做的是重写的网址:
www.example.com/book.php?course= #WHATEVERSLUG

www.example.com/course/#WHATEVERSLUG

我已被成功BELOW使用的代码,而现在没有错误

RewriteEngine On 

RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^course\/([^/\.]+)/?$ book.php?course=$1 [L] 

然后,我尝试添加另一个重写MOD,如下:

RewriteRule ^(.*)\/(\?.*)?$ $1$2 [R=301,L] 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule (.*) $1.php [L] 

通过删除扩展名为.php,以缩短我的网址,并删除traling斜线,看来,他们不拌匀因为某些原因。我对.Htaccess不太好,所以任何帮助都是正面的。

或者,如果有人有另一个建议重写:


www.example.com/book.php?course=#WHATEVERSLUG

www.example.com/course/#WHATEVERSLUG

而且

重写PHP文件,删除extenstions和traling斜线..

它会很受赞赏。先谢谢你。

+0

您要重写所有PHP文件没有.PHP?例如yoursite.com/about会在内部转发about.php? –

+0

是的,但是如果有办法重写单个文件,并且我可以复制它并将其更改为我想要的任何文件,那样会更酷,但我只是想让它一起工作 –

回答

0

想通了!:

瓦特/一点点从帮助:Multiple conflicting htaccess RewriteRules

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 

RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{SCRIPT_FILENAME} !-f 

RewriteRule ^course\/([^/\.]+)/?$ ./book.php?course=$1