windows下安装CI框架
CI框架是一个非常流行的 mvc框架, CI框架如何安装和使用,在CI中文网已经讲的比较详细了 ,这里记录下几个需要注意的地方。
一、 index.php问题
把压缩包下载解压到项目根目录即可运行里面的demo。按照ci手册上的第一个例子,通过controllers访问welcome控制器里面的index方法 ,只需要在浏览器运行 http://localhost/CodeIgniter-3.0.6/index.php即可 (其中CodeIgniter-3.0.6为CI框架的目录可以自定义)
这里的url没有带控制器Welcome是因为在config/routes.php里面写了默认的路由配置: $route['default_controller'] = 'welcome';
然后在运行第二个例子application/controllers/Pages.php时,
在地址栏一直是输入的是:http://localhost/CodeIgniter-3.0.6/pages/test/ 和 http://localhost/CodeIgniter-3.0.6/pages/test/about 发现一直报错Not Found The requested URL /CodeIgniter-3.0.6/pages/test/about was not found on this server.
目录:

controllers/pages.php :
<?phpclass Pages extends CI_Controller {
public function test($page = 'home'){ //参数可以作为路由,比如:http://localhost/CodeIgniter-3.0.6/pages/test/about 将跳转到about页面
if (!file_exists(APPPATH.'views/pages/'.$page.'.php')){
show_404();
}
$data['title'] = ucfirst($page);
$this->load->view('pages/'.$page, $data);
}
}
?>
home.php
<?php
define("VIEWPATHS", dirname(__DIR__));
require_once(VIEWPATHS.'/template/header.php');
echo "hello home page.";
require_once(VIEWPATHS.'/template/footer.php'); //__DIR__ 获取的是当前文件所在文件夹
//dirname(__DIR__) 获取的是当前文件所在文件夹的上一级目录
header.php
<!DOCTYPE html>
<html>
<head>
<title><?php echo $title ?></title>
</head>
<body>
<h1>
<?php echo $title; ?>
</h1>
footer.php
<div><em>© 2016</em></div>
</body>
</html>
以为是哪里需要配置什么 ,后来看到路由那块时发现需要在浏览器中输入[your-site-url]index.php/pages/view 。
需要加入index.php 太坑了。
怎么去掉url中的这个index.php呢 ,在网上搜索了下 有几个方法 。
1. 需要开启apache的rewrite
a. 找到LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#
b. 找到<Directory "D:/my/develop/apacheDev"> 将里面的AllowOverride none 改为 AllowOverride All (需要重启apache)
2. 在index.php同目录下新建.htaccess
输入内容:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|js|css|robots\.txt)
RewriteRule ^(.*)$ /CodeIgniter-3.0.6/index.php/$1 [L]
其中CodeIgniter-3.0.6可根据实际目录填写
这样重启apache之后就可以直接通过控制器访问啦
http://localhost/CodeIgniter-3.0.6/pages/test 访问正常
http://localhost/CodeIgniter-3.0.6/pages/test/about 访问正常
参考文档:
http://codeigniter.org.cn/user_guide/tutorial/static_pages.html
http://www.php1.cn/article/7601.html
windows下安装CI框架的更多相关文章
- windows下安装Scrapy框架
一 首先我们通过pycharm安装: 发现不行,会报错. 二 通过命令行再次进行安装: 发现还是会报错: 更新下pip,继续安装,发现还是不行,那怎么办呢? 继续安装Scrapy发下还是不行: 那么我 ...
- windows环境下安装yaf框架
windows环境下安装yaf框架 在windows下安装yaf框架 准备工作: php环境(过程略,wamp,xampp,phpstudy都行,php版本大于5.3) git工具(需要从github ...
- (转)windows下安装nodejs及框架express
转自:http://jingyan.baidu.com/article/456c463b60fb380a583144a9.html windows下安装nodejs及框架express nodejs从 ...
- Scrapy框架Windows下安装
在windows下安装好Python3 后,安装Scrapy也有许多种方法,我这里采用pip 安装.前提您已经安装了pip 直接在cmd命令行中 pip install Scrapy building ...
- python应用:爬虫框架Scrapy系统学习第二篇——windows下安装scrapy
windows下安装scrapy 依次执行下列操作: pip install wheel pip install lxml pip install PyOpenssl 安装Microsoft visu ...
- windows下安装ruby和 rails的痛苦经历
准备安装ruby on rails,在网上搜了下,步骤都类似,但实际安装过程中却碰到很多问题.下面详细说下: 说明下,文章是按照我尝试的过程描述的.但最终是靠 运行 railsinstaller一键式 ...
- QT学习之windows下安装配置PyQt5
windows下安装配置PyQt5 目录 为什么要学习QT 命令行安装PyQt5以及PyQt5-tools 配置QtDesigner.PyUIC及PyRcc 为什么要学习QT python下与界面开发 ...
- Windows下安装Django【转】
Windows下安装Django及WEB服务启动 如果使用的是 Linux 或 Mac OS X ,系统可能已经预装了 Python .在命令提示符下 (或 OS X 的终端中) 输入python ...
- windows 下安装pyspider
今天主要介绍一下在Windows下安装pyspider,pyspider是一款用python编写的网络爬虫框架,这个框架最好是在linux下运行,Windows下运行可能会出现兼容性问题,如果实在要在 ...
随机推荐
- Oracle三组难缠的hint no_unnest/unnest,push_subq,push_pred--平展化(转)
经常有人把这三个hint搞混,主如果因为对三种重写道理不清楚.特总结如下.(实验景象为10204)1. no_unnest, unnestunnest我们称为对子查询展开,顾名思义,就是别让子查询孤单 ...
- Entity Framwork db First 中 Model验证解决办法。
由于项目中用到 Entity Framwork db First 每次从数据库生成数据模型之后都会把模型更新. 只要有一个表更新.所有的类都会重新生成. 在网上找了各种例子都是差不多的, 可能 ...
- TXT四则运算计算器
基本思想:使用getline函数从TXT文件中依次读出中缀表达式,将其转为后缀表达式后计算结果,并与用户结果比对. 整数.分数.小数的处理:将小数和整数都视为默认分母为1的分数.建立分数类,在中缀转换 ...
- 动态规划——区间dp
在利用动态规划解决的一些实际问题当中,一类是基于区间上进行的,总的来说,这种区间dp是属于线性dp的一种.但是我们为了更好的分类,这里仍将其单独拿出进行分析讨论. 让我们结合一个题目开始对区间dp的探 ...
- 苹果教你六招:设计优秀的icon
在iOS 7测试版发布后,网上开始出现大量关于iOS 7设计的资源.在WWDC期间,苹果曾为开发者举办了多场主题演讲,其中有一场是苹果UX布道师Mike Stern的精彩演讲-- 优秀iOS设计最佳实 ...
- sqlserver使用OpenQuery或OPENROWSET遇到的问题
OpenQuery,OPENROWSET允许用户在链接服务器上查询.通过这种方法来得到查询的结果集. 1.在创建存储过程中,必须设置 SET ANSI_NULLS ...
- 隐式intent
使用隐式Intent,我们不仅可以启动自己程序内的活动,还可以启动其他程序的活动, 这里我们首先指定了Intent的action是Intent.ACTION_VIEW,这是一个Android系统内置的 ...
- 1002 A + B Problem II [ACM刷题]
这一段时间一直都在刷OJ,这里建一个博客合集,用以记录和分享算法学习的进程. github传送门:https://github.com/haoyuanliu/Online_Judge/tree/mas ...
- JVM中java类的加载时机(转载:http://blog.csdn.net/chenleixing/article/details/47099725)
Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的加载机制.类从被加载到虚拟机内存中开始,到卸载出内 ...
- scala中常用但其他语言不常见的符号含义
本文旨在介绍Scala在其他语言中不太常见的符号含义,帮助理解Scala Code. 随着我对Scala学习的深入,我会不断增加该篇博文的内容. 修改记录 ----2016.11.23 新增scal ...