1. 程式人生 > >ThinkPHP 去掉 public 和 index.php

ThinkPHP 去掉 public 和 index.php

去掉 public

將 public 裡的 index.php 移動到根目錄,並修改內容如下:

<?php
// 定義應用目錄
define('APP_PATH', __DIR__ . '/application/'); //目錄不一樣
define('SITE_URL','http://xxx.com');

// 載入框架引導檔案
require __DIR__ . '/thinkphp/start.php';

做到這一步,我們即可隱藏 public 目錄。

去掉 index.php

在 APACHE (phpstudy) 裡面去配置

1.將 httpd.conf 配置檔案中載入 mod_rewrite.so 模組 #LoadModule rewrite_module modules/mod_rewrite.so把前面的警號去掉 2.在 APACHE (phpstudy) 裡面去配置(有多處) 將 AllowOverride None 中的 None 改為 All

<Directory "D:/server/apache/cgi-bin">
   AllowOverride none  改為   AllowOverride ALL
	Options None
	Order allow,deny
	Allow from all
</Directory>

3.在根目錄下建立 .htaccess 檔案

RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1] 這句話表示將 index.php 隱藏掉的,如果不想省略就可以將這句話去掉。(public 下也有這個檔案)

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>

補充:在 windows 下不能建立以點開頭的檔案,你可以先隨便建立一個檔案

然後在 DOS 在操作 rename xx.xx .htaccess