urlMnager 的錯誤

hello , 請教大家一下

我今天用了 svn 去 下載最新版本的 yii ,並且用 yiic 建立預設專案

並在 config/main.php 設定 urlManager 內容如下

在 .htaccess 設定如下

這樣的設定跑起來是 ok 的

url 若打 http://localhost/myt…hp/site/contact 可以跑證明 rewrite 的部分沒問題

若我把 urlManger 改成如下

這樣跑起來就有問題

預設專案所建立的各個url會長的如下

http://localhost/mytest/site/contact

而 Apache 給我的錯誤會是

Bad Request

Your browser sent a request that this server could not understand.

不知道是錯在那裏

另外想請教大家一個問題

若我想要讓預設的 path 長的像 http://localhost/mytest/contact 而不是 http://localhost/mytest/site/contact

不知道該如何做

感謝大家

可能和apache的设置有关,因为你这个错误是Apache报的。查看一下apache error.log看看有没有线索。你的.htaccess应该是可以的。我用的和你一样,只是没有前两行。

你需要的URL rule如下:

'contact'=>'site/contact'

看看有没有把设置改成allow from all

Quote

可能和apache的设置有关,因为你这个错误是Apache报的。查看一下apache error.log看看有没有线索。你的.htaccess应该是可以的。我用的和你一样,只是没有前两行。

你需要的URL rule如下:

'contact'=>'site/contact'

謝謝 qiang 的解答

我找到問題了

.htaccess 加上 RewriteBase /mytest 就好了

不過我想另外請教一下

有沒有辦法不加 RewriteBase

又或者是 RewriteBase 後面可以用甚麼變數來代表 .htaccess 所在的目錄

例如 RewriteBase %CURRENT_PATH%

當然這個 %CURRENT_PATH% 是我亂想的 , 只是想問看看有沒有甚麼替代辦法

這樣當開發好一個專案的時候就不需要因為安裝目錄的不同而修改 RewriteBase