CodeIgniter不在localhost上工作

tar*_*ska 5 php codeigniter

我从ftp下载了一个网站.该网站由CodeIgniter制作.我的问题是它似乎不适用于localhost.

config.php中的基本URL:

$config['base_url'] = 'http://sample_localhost/mysite/';
Run Code Online (Sandbox Code Playgroud)

database.php中的设置:

$db['default']['hostname'] = 'sample_localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'admin';
$db['default']['database'] = 'my_database';
Run Code Online (Sandbox Code Playgroud)

很感谢任何形式的帮助.提前致谢!

Gau*_*g P 9

1)下载最新版本的CodeIgniter.

2)解压缩并将提取的文件夹粘贴到'htcdocs'目录中.在我的场景中,我使用XAMPP 1.8.1,所以我将它粘贴在同一目录中.此外,您可以重命名文件夹Eg CI.

在此输入图像描述

3)首先查看配置文件并进行一些修改.

autoload.php

$autoload['libraries'] = array('database');
$autoload['helper'] = array('url');
Run Code Online (Sandbox Code Playgroud)

config.php文件

$config['base_url'] = 'your localhost url';
Run Code Online (Sandbox Code Playgroud)

在我的情况下:

$config['base_url'] = 'http://localhost/CI/index.php/'; // your current URL on the address bar when displaying the welcome_message
$config['index_page'] = 'index.php'; // page where you want your viewers are redirected when they type in your website name
Run Code Online (Sandbox Code Playgroud)

如BASE_URL - http://www.example.com/ index_page -的index.php或直行news.php,它给你

routes.php文件

$route['default_controller'] = 'site' // your controller's method, originally "welcome" to display welcome message
Run Code Online (Sandbox Code Playgroud)

我将"site"设置为默认控制器

为database.php

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = '[your database]'; // e.g. CI_series
$db['default']['dbdriver'] = 'mysql';
Run Code Online (Sandbox Code Playgroud)

提示:如果您还没有访问数据库的任何权限,则默认用户名为root.此外,暂时将密码留空.

4)开始使用控制器控制器是应用程序的核心,因为它们决定了如何处理HTTP请求.Controller只是一个以与URI相关联的方式命名的类文件.

例如

http://www.example.com/index.php/blog/
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,CodeIgniter将尝试查找名为blog.php的控制器并加载它.

当控制器的名称与URI的第一个段匹配时,它将被加载.

- 参考

现在,让我们输入控制器的代码.

<?php
class Site extends CI_Controller
{
    function index()
    {
        $this->load->view('home.php');
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

基本上,这只会加载我们的名为home的视图/页面

*什么是负载?

顾名思义,Loader用于加载元素.这些元素可以是库(类)查看文件,助手,模型或您自己的文件.(参考文献)

此代码段可让您显示页面home.php.此外,您正在调用home.php,您必须在views文件夹下有此页面.创建你的home.php,写下你想要显示的任何东西作为我们第一次运行的测试并保存它.

此代码段可让您显示页面home.php.此外,您正在调用home.php,您必须在views文件夹下有此页面.创建你的home.php,写下你想要显示的任何东西作为我们第一次运行的测试并保存它.

home.php

<p>
My view has been loaded. Welcome!
</p>
Run Code Online (Sandbox Code Playgroud)

另外,将我们的控制器保存在controllers文件夹下,文件名应与您的类名相同.在这种情况下,它应保存为site.php.

第一次运行:

在此输入图像描述


Gau*_*164 5

我应该是这样的

$config['base_url'] = 'http://localhost/mysite/';
Run Code Online (Sandbox Code Playgroud)

或者喜欢

$config['base_url'] = 'http://MY_IP/mysite/';
Run Code Online (Sandbox Code Playgroud)

并检查配置文件中的索引值

$config['index_page'] = 'index.php';
Run Code Online (Sandbox Code Playgroud)

如果是这样,那么你需要在控制器名称前的url中添加index.php并检查你的文件夹是否也具有权限......并在你的router.php上看到这个

$route['default_controller'] = "welcome";
Run Code Online (Sandbox Code Playgroud)

如果要在调用时默认显示控制器,则可以更改 sample_localhost/my_site