2013-02-11 93 views
0

我不知道太多的PHP,但我有自由職業者爲我開發一個網站,但現在一旦我上傳到我的主機我不能得到它的工作(數據庫和一切正常設置)。 當我嘗試訪問域時,出現500內部服務器錯誤,但如果我之後鍵入/index.php,則可以訪問該站點。 網站上類別相同的東西,一旦點擊它們就會顯示錯誤。 下面是.htaccess的代碼,這裏是網站網址:http://tinyurl.com/vvcheftHTACCESS 500內部錯誤

RewriteEngine on 
RewriteCond $1 !^(index\.php|uploads|assets|robots\.txt) 
RewriteRule ^(.*)$ /.../index.php/$1 [L] 
+0

你不能這樣做'的RewriteCond $ 1','$ 1'還不存在。 – ceejayoz 2013-02-11 16:19:10

+1

500表示「出錯了,你是客戶,你不需要知道什麼。」在服務器日誌中查找真正的錯誤。 – Quentin 2013-02-11 16:19:56

+0

@ceejayoz這是什麼意思:DI真的沒有任何想法:D – Mariola 2013-02-11 16:20:14

回答

0

沒有必要引用$ 1你的RewriteCond線在哪裏。在第2行,刪除您在上面發佈的代碼的$ 1。我相信這應該如你所期望的那樣工作。如果沒有,請更新並通知我。

+0

剛剛做到了,但發生同樣的事情:\ – Mariola 2013-02-11 16:24:50

+0

沒有規則在語法上是正確的。 – 2013-02-11 16:25:30

+0

我剛纔在錯誤日誌中看到了這個 [Mon Feb 11 09:25:32 2013] [warn] RewriteCond:不支持非正則表達式模式'-f'的NoCase選項,將被忽略。 – Mariola 2013-02-11 16:26:31

0

得到它,它完美的工作,我換成這一個我htaccess文件:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^(.*)$ /index.php/$1 [NC,L]