2012/02/08

[kohana3] 拿掉index.php

完成安裝後,第一步就要先把醜醜的index.php從網址拿掉

要拿掉有兩個步驟:
  1. bootstrap.php要設定
  2. Apache Rewrite設定



===bootstrap.php===
  1. 請打開htdocs\kohana\application\bootstrap.php
  2. 找尋第82行:
    Kohana::init(array(
        'base_url'   => '/kohana',
       
    ));
    請新增紅字到array裡面,變為
    Kohana::init(array(
        'base_url'   => '/kohana',
        'index_file' => FALSE,
    ));
  3. 新增這行的意思就是告訴kohana,我不要index_file這個東西出現在網址(但是並不能把實際的index.php刪掉)
  4. 收工
===Apache Rewrite===
要讓index.php消失需要使用Apache的URL Rewite模組,讓他把原本的http://localhost/kohana/index.php/<your Controller> 改為 http://localhost/kohana/<your Controller>,以下再細分兩步驟
開啟apache rewrite模組
  1. 請開啟httpd.conf檔案(在Apache安裝目錄中的conf資料夾內,真找不到請用搜尋XDD)
  2. 請將 #LoadModule rewrite_module modules/mod_rewrite.so 前面的#拿掉,改為LoadModule rewrite_module modules/mod_rewrite.so
  3. 尋找 <Directory "Apache安裝目錄/htdocs">
    將其中的 AllowOverride None 改為 AllowOverride All,(如果已經是All就不用改)
  4. 請重開Apache
更改.htaccess
  1.  請將..\htdocs\kohana\example.htaccess複製或改名為..\htdocs\kohana\.htaccess (windows不能直接改,請用像notepad++的文字編輯器開啟後另存新檔)
  2. 修改.htaccess檔案
    第5行: RewriteBase / 改為 RewriteBase /kohana (跟在bootstrap.php的base_url相同)
  3. 存檔,收工

===測試===
打開瀏覽器http://localhost/kohana/welcome,測試可否正常看到Hello World。

===參考===
http://kohanaframework.org/3.2/guide/kohana/tutorials/clean-urls

沒有留言:

張貼留言