2015-10-14 252 views
1

我已經完成了所有我知道該怎麼做,我需要幫助。從url中刪除index.php Codeigniter

我正在與某人合作在Windows Server 2008上使用DNS和IIS創建內部網站。我們已經建立了,當我們鍵入test.site將訪問我們的位於D:/ intranet的網站文件夾。

我添加了我使用Codeigniter框架構建的網站。當我在瀏覽器中訪問我的網站http://fallspointe.resources時,一切正常。它加載並沒有錯。當我訪問我的登錄頁面http://fallspointe.resources/index.php/admin/user/login時,它會加載並且一切正常。在我的本地計算機上,我使用了mamp(mac電腦),因此我使用.htaccess來重寫URL,以便我可以在沒有index.php的情況下訪問http://fallspointe.resources/admin/user/login。搜索後,我發現你不能使用.htaccess重寫url,而是使用web.config文件。

這是我遇到問題的地方。不管我放在web.config文件中。沒有什麼變化。我不斷收到相同的錯誤頁面。我注意到「詳細錯誤信息」顯示我嘗試訪問http://fallspointe.resources/admin/user/login時嘗試訪問的物理路徑是D:\ intranet \ admin \ user \ login,這不是真的。我已經嘗試了一切,它似乎還沒有閱讀我的web.config文件或其他東西。以下是我嘗試使用的重寫規則之一。

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
<system.webServer> 
    <rewrite> 
     <rules> 
     <rule name="Rule" stopProcessing="true"> 
      <match url="^(.*)$" ignoreCase="false" /> 
      <conditions logicalGrouping="MatchAny"> 
        <add input="{REQUEST_FILENAME}" matchType="IsFile" /> 
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" /> 
      </conditions> 
      <action type="Rewrite" url="index.php/{R:1}" appendQueryString="true" /> 
     </rule> 
     </rules> 
    </rewrite> 
</system.webServer> 
</configuration> 

我不知道我是否在錯誤的地方,或者我必須使用不同的路徑爲我的index.php文件。我一定在做一件這麼簡單的事情,因爲我無法在互聯網上發現這個問題。

此外,下面是我不斷收到的錯誤頁面。

enter image description here

請幫助!提前致謝。

+0

此http:// stackoverflow的可能重複。在33097137#33097137#33097137 – Ricky

回答

0

您的重新編寫URL是好的。

入住這

  1. Config/config.php改變這種

    • $config['base_url'] = '';
    • $config['index_page'] = 'index.php';
  2. routes.php檢查

    • default_controller被定義。

注:當我加載此http://fallspointe.resources/ URL它根本無法加載。所以請檢查所有文件上傳以及是否關於命名對話

+0

謝謝你的迴應。這實際上是一個內部網站。它只能在網絡上看到。我將'index.php'添加到了我的配置文件中。但是,它顯示在url(fallspointe.resources/index.php/admin/user/login)中。它看起來像IIS甚至沒有閱讀我的web.config文件。 – speck1990