我在本地计算机上安装了CodeIgniter。我在Windows和Apache配置中使用hosts
文件使其在我的真实域名下工作(例如site.com
)。它工作得很好,所以今天我把所有东西都上传到我的主人。我更改了hosts
和Apache配置,通过ipconfig /flushdns
刷新了DNS,现在输入某些网址(games
)给了我404.
我的控制器名称以大写字母开头,但我的路由设置如下:
$route['Games/(:num)/(:any)'] = 'Games/Game/$1';
$route['games/(:num)/(:any)'] = 'Games/Game/$1';
通过games/14/game
或Games/14/game
输入此内容无效。
搜索图像(使用solution given by merahulpk)也不起作用。
它有什么用?
不幸的是,它仍处于开发阶段,所以我还不能给你这个aaddess。
- 编辑 -
图像包含脚本:
views/game.php
<?php
$image_path = $this->config->item('base_path').'images/games/'.$info['id'].'-s.jpg';
if(file_exists($image_path)) {
$small = $this->config->item('base_url').'images/games/'.$info['id'].'-s.jpg';
$big = $this->config->item('base_url').'images/games/'.$info['id'].'-b.jpg';
} else {
$small = $this->config->item('base_url').'images/games/none-m.png';
$big = $this->config->item('base_url').'images/games/none-m.png';
}
?>
config/sit-config.php
<?php
$config['base_url'] = "http://".$_SERVER['SERVER_NAME'] . str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
if(!defined('DOCUMENT_ROOT')) define('DOCUMENT_ROOT',str_replace('system/application/config','',substr(__FILE__, 0, strrpos(__FILE__, '/'))));
$config['base_path'] = constant("DOCUMENT_ROOT");
?>
答案 0 :(得分:3)
请勿在路线中使用大写字母。像这样使用全部小写:
$route['games/(:num)/(:any)'] = 'games/game/$1';
如果使用大写控制器名称,则路由不起作用。至于方法名称,它们可以是大写的小写,两者都可以工作......不需要重复的路由!