在远程服务器上配置 codeigniter(404 未找到)

Config codeigniter on remote server (404 not found)

我开始使用 codeigniter 和 netbeans 在远程服务器上实现 php 应用程序。我不明白为什么即使我做了所有的配置我仍然有(404 not found)。与服务器的连接正常,我可以上传文件。在 $config['base_url'] 中,我尝试了服务器的地址,到 index.html 的路径,什么都没有……没有结果。 我实际上不知道问题出在哪里以及我必须更改哪个文件,如果有人可以帮助我找到解决方案。

非常感谢您的回答!

在没有看到您的配置的情况下很难解决您的问题。我会说首先仔细检查您提到的 $config['base_url'] ,但将其设置为任何站点 name/address 。例如,如果我只是 运行 本地端口 8888 上的东西,它看起来像这样

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

因此,如果您的网站类似于 wwww.example.com,那么它会是

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

如果您想从 URL 中删除 'index.php',还要仔细检查您的 .htaccess 文件以重新写入访问权限。您的网站使用什么网络服务器?

一些托管服务提供商默认禁用 Mod_Rewrite。使用 phpinfo() 检查它是否已启用。

你说"the path to index.html"。 这不是 CI 的工作方式。您不应该直接访问视图。尝试使用您的控制器访问它们。例如,您可以有一个控制器 'Welcome'(这是您下载框架时的标准控制器)。它看起来像这样:

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

这个控制器应该位于 application/controllers 并且它将在 application/views 中加载一个视图。在这种情况下,这将加载 'application/views/welcome_message.php'。您可以在 application/config/routes.php 中为控制器定义 url。默认情况下,控制器 'Welcome' 会在您刚下载框架时调用。您还谈论 .htaccess 文件。如果要删除 index.php?,可以使用 htaccess 文件。来自 url。在此处查看此问题的答案:CodeIgniter removing index.php from url

我真的建议在开始使用该框架之前观看一些 CI 基础教程。您可以在几个小时内掌握框架及其文件夹结构的工作原理。

**编辑**
也许问题不在于 codeigniter,而在于您的网络服务器,您可以删除 codeingiter 安装并添加一个 phpinfo 文件。这样您就可以看到您的服务器有哪些 php 设置(如果 php 已启用)。另请注意,nginx 不适用于 .htaccess,如果您使用的是 nginx 服务器,则应在配置文件中添加重写规则。