2021年2月13日 星期六

URL怎麼隱藏檔案名稱或index( CodeIgniter)

 在建立CI環境的時候會需要建立一個隱藏設定檔,檔名是.htaccess

這個檔案的內容CI的網頁裡會提供,每個版本的內容不同。

CI3的設定長這樣:

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule .* index.php?/$0 [PT,L]

CI4:

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)/$ /$1 [L,R=301]

這些是改寫網址的設定,RewriteCond和RewriteRule的詳細介紹可以到這邊看。

 

修改完.htaccess後,還需要到routes修改controller的設定。

CI3:

  $route['default_controller'] = '檔案名稱/controller name';
  $route['(:any)'] = '檔案名稱/controller name/$1(變數)';

CI4:

  $routes->setDefaultController('FE');
  $routes->setDefaultMethod('index');

CI4會設定預設的method,CI3則是預設會找default_controller的index。

如果CI3同時有多個controller檔案的話,那就必須再多設定一行$route['接收值'] = '檔案名稱/index';才能讓index不顯示出來

沒有留言:

張貼留言