Thinkphp中去掉index.php

來源:互聯網
上載者:User

標籤:錯誤   許可權   over   server   htm   載入   symlink   options   add   

 

原文地址:http://www.thinkphp.cn/topic/30538.html

例如你的原路徑是 http://localhost/test/index.php/index/add
那麼現在的地址是 http://localhost/test/index/add
如何去掉index.php呢?

1.httpd.conf設定檔中載入了mod_rewrite.so模組 //在APACHE裡面去配置

  1. #LoadModule rewrite_module modules/mod_rewrite.so把前面的警號去掉
複製代碼

2.AllowOverride None 講None改為 All //在APACHE裡面去配置

  1. <Directory "D:/server/apache/cgi-bin">
  2. AllowOverride none 改 AllowOverride ALL
  3. Options None
  4. Order allow,deny
  5. Allow from all
  6. </Directory>
複製代碼

3.確保URL_MODEL設定為2,
在項目的設定檔裡寫

  1. return Array(
  2. ‘URL_MODEL‘ => ‘2‘,
  3. );
複製代碼

4 .htaccess檔案必須放到跟目錄下
這個檔案裡面加:

  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteCond %{REQUEST_FILENAME} !-f
  5. RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
  6. </IfModule>
複製代碼

補充:在windows下不能建立以點開頭的檔案,你可以先隨便建立一個檔案
然後在DOS在操作 rename xxxx.xxxx .htaccess
或者開啟記事本寫入htaccess然後另存新檔.htaccess即可
如果出現403錯誤則將.htaccess開啟在開頭添加Options +FollowSymlinks
即:

  1. Options +FollowSymlinks
  2. <IfModule mod_rewrite.c>
  3. RewriteEngine on
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
  7. </IfModule>
複製代碼

即可解決.
無許可權也是加上Options +FollowSymlinks

Thinkphp中去掉index.php

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.