[CodeIgniter] 隱藏網址中的index.php

更新於 發佈於 閱讀時間約 2 分鐘
此文章同步刊登於我的部落格

前言

Codeigniter如果不調整設定,網址中會自帶index.php,為了符合MVC架構,通常會將它去除,步驟如下:


一、開啟伺服器的mod_rewrite

這邊我以Apache作為範例

開啟httpd.conf,找到這行:#LoadModule rewrite_module modules/mod_rewrite.so


https://ithelp.ithome.com.tw/upload/images/20210726/20139878y1uX4Whiiu.png

https://ithelp.ithome.com.tw/upload/images/20210726/20139878y1uX4Whiiu.png

我們要取消註解,所以將這行前面的#去除並重新啟動Apache


二、 確認mod_rewrite是否啟用

運行php函式phpinfo(),並開啟該畫面後,搜尋mod_rewrite

https://ithelp.ithome.com.tw/upload/images/20210726/20139878RW82EbATwl.png

https://ithelp.ithome.com.tw/upload/images/20210726/20139878RW82EbATwl.png

只要在loaded modules欄位內有找到mod_rewrite就代表啟用成功


三、 編輯.htaccess檔案

找到codeigniter根目錄內的.htaccess檔案(若沒有該檔案則建立一個),並在檔案內加入以下內容:

RewriteEngine on
RewriteCond $1 !^(index\.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|img|css|js|fonts|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

APACHE

四、 修改config.php檔案

找到application\config\config.php,並找到$config['index_page'] = 'index.php';

並改成:$config['index_page'] = '';

接下來你的網址就可以省略輸入index.php了

環境

  • Windows 10
  • php 7.3.5
  • Apache 2.4.39
  • Codeigniter 3.1.6
avatar-img
7會員
21內容數
你可以在這裡看到後端工程師的技術文章 也可以看到一些投資相關的心得分享 歡迎交流~
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Hankz是名工程師 的其他內容
有的時候,會希望在物件導向中對原生的Class新增功能的時候,大多我們都會寫一個新的class並繼承。 但是其實Laravel提供了一個不同的方式,讓我們可以在常用的Class上,直接新增想要的function,那就是macro。
有的時候,會希望在物件導向中對原生的Class新增功能的時候,大多我們都會寫一個新的class並繼承。 但是其實Laravel提供了一個不同的方式,讓我們可以在常用的Class上,直接新增想要的function,那就是macro。
你可能也想看
Google News 追蹤
Thumbnail
大家好,我是woody,是一名料理創作者,非常努力地在嘗試將複雜的料理簡單化,讓大家也可以體驗到料理的樂趣而我也非常享受料理的過程,今天想跟大家聊聊,除了料理本身,料理創作背後的成本。
Thumbnail
哈囉~很久沒跟各位自我介紹一下了~ 大家好~我是爺恩 我是一名圖文插畫家,有追蹤我一段時間的應該有發現爺恩這個品牌經營了好像.....快五年了(汗)時間過得真快!隨著時間過去,創作這件事好像變得更忙碌了,也很開心跟很多厲害的創作者以及廠商互相合作幫忙,還有最重要的是大家的支持與陪伴🥹。  
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
CodeIgniter 3 和 Laravel 是兩種不同的 PHP 框架,各有其特點和適用場景。CodeIgniter 3 是一個輕量級框架,Laravel 是一個功能強大的現代 PHP 框架,同樣都有Models的它們有什麼樣的差別呢?
Thumbnail
前言與本文適合對象 本篇電子書是在幫目前已經有在經營的自媒體在更往上提升,所以不會教如何架設網站、主機操作與設定等。 如果真的想要自己架設網站的可以參考:網站帶路姬 想要找部落格主機代管的可以找:金城事務所 我自己的建議是架站跟主機選擇都不是創作者需要學習的,可以交給專業的服務商幫你
Thumbnail
※ 原本狀態:伺服器渲染 這是 MVC 架構下的 request / response 示意圖,在這張圖呈現的架構裡,畫面和資料都由同一個架構處理。 伺服器渲染流程: 瀏覽器針對特定網址送出請求。 路由器解析請求後,轉接給對應的 controller。 controller 按照要求,透過
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
接續上一篇 Step2:VC#專案建立 Step3:IIS新建站台 Step4:VC#架設到IIS中
Thumbnail
大家好,我是woody,是一名料理創作者,非常努力地在嘗試將複雜的料理簡單化,讓大家也可以體驗到料理的樂趣而我也非常享受料理的過程,今天想跟大家聊聊,除了料理本身,料理創作背後的成本。
Thumbnail
哈囉~很久沒跟各位自我介紹一下了~ 大家好~我是爺恩 我是一名圖文插畫家,有追蹤我一段時間的應該有發現爺恩這個品牌經營了好像.....快五年了(汗)時間過得真快!隨著時間過去,創作這件事好像變得更忙碌了,也很開心跟很多厲害的創作者以及廠商互相合作幫忙,還有最重要的是大家的支持與陪伴🥹。  
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
CodeIgniter 3 和 Laravel 是兩種不同的 PHP 框架,各有其特點和適用場景。CodeIgniter 3 是一個輕量級框架,Laravel 是一個功能強大的現代 PHP 框架,同樣都有Models的它們有什麼樣的差別呢?
Thumbnail
前言與本文適合對象 本篇電子書是在幫目前已經有在經營的自媒體在更往上提升,所以不會教如何架設網站、主機操作與設定等。 如果真的想要自己架設網站的可以參考:網站帶路姬 想要找部落格主機代管的可以找:金城事務所 我自己的建議是架站跟主機選擇都不是創作者需要學習的,可以交給專業的服務商幫你
Thumbnail
※ 原本狀態:伺服器渲染 這是 MVC 架構下的 request / response 示意圖,在這張圖呈現的架構裡,畫面和資料都由同一個架構處理。 伺服器渲染流程: 瀏覽器針對特定網址送出請求。 路由器解析請求後,轉接給對應的 controller。 controller 按照要求,透過
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
接續上一篇 Step2:VC#專案建立 Step3:IIS新建站台 Step4:VC#架設到IIS中