iT邦幫忙

0

php codelgniter .htaccess設定怪怪的

我的.htaccess
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\\.php|images|robots\\.txt|$)
RewriteRule ^(.*)$ /ci/admin/index.php/$1 [L]

我的控制器有一子層
/controllers/index
/controllers/main
/controllers/test

網址要是變
127.0.0.1/ci/admin/main <----OK
但是
127.0.0.1/ci/admin/index 就找不到了
必須
127.0.0.1/ci/admin/index.php/index
win下面好的
來到linux就不行

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

2
fillano
iT邦超人 1 級 ‧ 2013-12-21 23:15:55
最佳解答

RewriteBase這樣不太對吧?

另外,在windows上可以,在linux上不行,我猜是檔名大小寫造成的,請檢查一下。(最常碰到的情況是,類別名稱的大小寫跟檔名不一致,這在windows上沒問題,但是到了linux就會找不到檔案)

<Directory /var/www/>
Options Indexes FollowSymLinks multiviews
AllowOverride All
Order allow,deny
allow from all
</Directory>
最後我找到原因 是因為 Options 多了multiviews
稍微找一下 在鳥哥教學中敘述好像是說多國語系之類的 我想可能是我linux有東西沒設定好
我移除multiviews 後重啟apache後就OK啦
非常感謝您的協助

我要發表回答

立即登入回答