2016-07-06 72 views
0

我開始在使用codeigniter和netbeans的遠程服務器上實現php應用程序。我不明白爲什麼我仍然有(404找不到),即使我做了所有的配置。連接到服務器是好的,我可以上傳文件。在$ config ['base_url']中,我嘗試了服務器的地址,index.html的路徑,沒有任何結果。 我其實不知道問題在哪裏,我必須改變哪個文件,如果有人可以幫助我,請找到解決方案。在遠程服務器上配置codeigniter(404找不到)

非常感謝你的回答!

回答

1

在沒有看到您的配置的情況下對您的問題進行故障排除有點難。我會說,首先仔細檢查你的$ config ['base_url']就像你提到的那樣,但是將其設置爲任何站點名稱/地址。例如,如果我只是在端口8888上運行本地的東西,它看起來像這樣

$config['base_url'] = 'http://localhost:8888/'; 

所以,如果你的網站是像wwww.example.com這將是

$config['base_url'] = 'http://www.example.com/'; 

也是雙 - 如果你想從URL中刪除'index.php',檢查你的.htaccess文件以重新寫入訪問。你的網站使用什麼網頁服務器?

+0

My $ config ['base_url']看起來像: $ config ['base_url'] ='https://xx.xx.xx.xx/'; (服務器的IP地址) 我在訪問文件中改變了什麼? 我使用apach作爲web服務器。 – jani

+0

如果您在Ubuntu上,請使用命令「a2enmod rewrite」,然後重新啓動apache服務器。這應該爲你的Apache服務器啓用mod_rewrite。同時仔細檢查你的config.php文件並設置$ config ['index_page'] =''; –

+0

我在redhat 6.6上,它不起作用。 $ config ['index_page'] =''index.php「 我沒有寫任何代碼,我想要獲取代碼開始編碼的歡迎頁面 我的文件。htaccess的外觀如下: Require all denied全部拒絕 – jani

0

某些託管提供商默認情況下禁用了Mod_Rewrite。使用phpinfo()來檢查它是否被啓用。

+0

我的訪問文件中沒有mod_rewrite,這是正常的?它看起來像: 要求都否認 所有 jani

1

你說「index.html的路徑」。 這不是CI的工作原理。你不應該直接訪問視圖。嘗試使用您的控制器訪問它們。例如,您可以擁有一個「歡迎」控制器(當您下載框架時,它是標準控制器)。它可以是這個樣子:

<?php defined('BASEPATH') OR exit('No direct script access allowed'); 
class Welcome extends CI_Controller { 
    function index() 
    { 
     $this->load->view('welcome_message'); 
    } 
} 

該控制器應位於 應用/控制器,它會加載應用程序/視圖的視圖。在這種情況下,這將加載'application/views/welcome_message.php'。你可以在application/config/routes.php中定義控制器的url。默認情況下,只需下載框架即可調用控制器「歡迎」。你也談論.htaccess文件。如果你想刪除index.php,你可以使用htaccess文件嗎?從網址。在這裏看到這個問題的答案:CodeIgniter removing index.php from url

我真的建議在開始使用框架之前觀看一些CI基礎教程。您可以掌握框架及其文件夾結構在幾個小時內的工作方式。

**編輯**
也許問題不在於codeigniter,而在於您的網絡服務器,您可以刪除您的codeingiter安裝並添加一個phpinfo文件。這樣你可以看到你的服務器有哪些php設置(如果php是啓用的話)。另外請注意,nginx不能與.htaccess一起使用,如果您使用的是nginx服務器,則應該在配置文件中添加重寫規則。

+0

拒絕我使用的是WELCOME_MESSAGE路徑中的第一個URL但是當它一點兒也不工作,我嘗試別的東西我在網上找到的。我已經將CI用於在本地運行的應用程序,並且我沒有遇到任何問題,但是在遠程服務器上我沒有爲什麼使用相同的配置,我仍然沒有找到404錯誤。我也在url中添加index.php來不使用htaccess文件,但沒有結果:/ – jani

+0

問題可能出在你的web服務器上,而不是ci中。我用一種方式編輯了我的帖子,以便您排除此問題。另外一個檢查htaccess文件是否正常工作的「骯髒」方法是將類似foo bar的內容寫入其中。如果你的服務器返回一個錯誤,你知道你的文件正在工作。 – StackerStan

相關問題