2013-06-30 71 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