2014-01-23 90 views
0

嗨,我開發PHP應用程序,其中在index.php頁面存在形式與作用如何允許URL中的正斜槓?

/controllers/UserController.php/signin/pr」,它重定向到UserController.php,我使用登入pr作爲其他常規發佈數據的參數。

這是工作的罰款在我的本地APACHE2.2但是當我託管在godaddy.com 是錯誤給「指定沒有輸入文件。

我一直在閱讀不同的文章,他們所有人都說我必須在「.htaccess」 中編寫規則,但我無法編寫適當的規則。請幫我解決這個問題

+0

文件權限是否正常?我的意思是php + x(執行)? –

+0

我認爲特權是好的。 becoz當我使用URL作爲「/controllers/UserController.php」它的工作原理,但與/ signin/pr它不起作用 – user3228848

+0

好的。我希望@giorgio回答會有幫助。最好的祝福! –

回答

0

這是因爲php作爲一個cgi應用程序運行。你必須稍微改變重寫規則。同時檢查this post

你重寫規則,極有可能是這個樣子:

RewriteRule ^(.*)$ index.php/$1 [L] 

你必須將它更改爲:

RewriteRule ^(.*)$ index.php?/$1 [L] 

(採取不將多餘的問號)

+0

感謝giorgio提供寶貴的解決方案。我嘗試了你的建議。但有一些問題。讓我解釋一下細節。 – user3228848

+0

感謝giorgio爲您提供寶貴的解決方案。我現在嘗試了你的建議,它部分工作。但是有一些問題。讓我詳細解釋一下。當index.php頁面重定向到UserController.php,然後在內部重定向到其他頁面。現在它被重定向到我想要的頁面,但瀏覽器URL不變,CSS和JavaScript不工作。如果我理解正確,請幫助我 – user3228848

+0

:UserController.ph中的代碼確實正在執行,但瀏覽器URL保持不變(即:您在瀏覽器地址欄中鍵入的url)。但是如果你想重定向訪問者,你將不得不輸出一個重定向頭或類似的東西。重寫規則僅將請求轉發給某個腳本,這不等於重定向。 – giorgio

相關問題