2014-12-05 102 views
1

我一直在試圖找出urlrewriting。而我仍然沒有真正理解它。 所以我想這:Htacces網址重寫不起作用

Options -Indexes +ExecCGI 
AddHandler cgi-script .cgi .pl 
php_flag display_startup_errors on 
php_flag display_errors on 
php_flag html_errors on 
php_flag log_errors on 
Options -MultiViews 
RewriteEngine On 
RewriteBase/
RewriteRule ^home/? index.php 
RewriteRule ^forum/?$ forum.php [L,NC] 
RewriteRule ^forum/([a-z0-9-]+)/?$ forum.php?catagory=$1 [L,QSA,NC] 
RewriteRule ^login/? loginpage.php 
RewriteRule ^register/? registerpage.php 
RewriteRule ^servers/? servers.php 
RewriteRule ^profile/? profile.php 
RewriteRule ^profile/([A-Za-z0-9-]+)/?$ profile?user=$1 
RewriteRule ^members/? memebers.php 

而且我很清楚沒有工作,我的網頁甚至不會加載任何正常更

當我用正常的URL:

forum/?catagory=test 

這作品非常好,會告訴我一切。我不明白爲什麼URL重寫不起作用!甚至嘗試過發電機和其他一些東西。它不會工作

+0

你有'RewriteEngine On'和'RewriteBase /' – CIRCLE 2014-12-05 16:12:12

+0

首先,是的。我現在添加的第二件事,但它沒有幫助。 – Sjenkie 2014-12-05 16:14:50

+0

如果你去'/ forum/test'會怎麼樣?你會得到一個404錯誤或做forum.php加載沒有類別? – 2014-12-05 16:44:14

回答

2

打開MultiViews選項關閉:

Options -MultiViews 
RewriteEngine On 
RewriteBase/
RewriteRule ^forum/?$ forum.php [L,NC] 
RewriteRule ^forum/([a-z0-9-]+)/?$ forum.php?catagory=$1 [L,QSA,NC] 

選項MultiViews所使用的Apache's content negotiation modulemod_rewrite和,使前運行Apache服務器匹配文件的擴展名。所以/file可以在URL中,但它將服務/file.php

+0

不適合我,對於遲到的迴應抱歉。 .. – Sjenkie 2014-12-06 10:38:05

+0

我在問題中添加了我的整個.htacces。頁面test.com/forum/test不起作用。我得到這個:http://prntscr.com/5drsb8。我應該得到這樣的東西:http://prntscr.com/5drsg3 – Sjenkie 2014-12-06 11:01:45

+0

好像看起來像問題是沒有得到你的CSS/JS。這是因爲你使用了css/js/images的相對鏈接。您可以嘗試在頁面的HTML標頭中添加以下內容:',以便每個相對URL都從該URL解析而不是當前頁面的URL。 – anubhava 2014-12-06 11:06:56

0

首先,你打開了RewriteEngine嗎? 其次,重寫模塊是否啓用?做一個phpinfo();檢查出來,這answer

這樣:

RewriteEngine On 
RewriteBase/
RewriteRule ^forum/?$ forum.php 
RewriteRule ^forum/([A-Za-z0-9-]+)/?$ forum.php?catagory=$1 [L] 

此頁面可以幫助您:URL Rewriting for Beginners

+0

我有引擎,它被啓用:正如所說的「/論壇/?catagory =測試」的作品。我試過你的代碼,我仍然沒有工作。 – Sjenkie 2014-12-05 16:21:43

+0

您的日誌中是否有錯誤輸出? – 2014-12-05 16:22:44

+0

是的,我做我得到的一切我加載一個錯誤,它是無法加載:「無法加載資源:服務器響應狀態404(未找到)」 – Sjenkie 2014-12-06 10:43:56