ci

去掉php框架CI默认url中的index.php

ぐ巨炮叔叔 提交于 2020-02-13 22:24:57
CI默认的rewrite url中是类似这样的 例如你的CI根目录是在 /CodeIgniter/ 下,你的下面的二级url就类似这样 http://localhost/CodeIgniter/index.php/welcome。 不太好看,怎么把其中的index.php取掉呢? 解决方法如下: 第一步: Apache Url Rewrite 配置(php伪静态) 检查 Apache 中 conf/httpd.conf 中是否存在如下一段代码: #LoadModule rewrite_module modules/mod_rewrite.so 把 LoadModule前边的#去掉。 第二步: 在网站根目录添加.htaccess(和application、system在一个目录下) 内容为: RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 备注: 1、要注意 /index.php/$1 要根据你目录(Web 目录,比如 http://www.domain.com/index.php)的实际情况来定。 比如网站根目录是 /ci/index.php 则要写成 /ci/index.php/$1 2、RewriteCond $1 !^

CI 框架怎么去掉隐藏入口文件 index.php

半腔热情 提交于 2020-02-13 15:33:27
当我重新接触一个框架的时候首先肯定要去掉入口文件,也就是index.php 这个东西在url上很不漂亮,而且每次我访问我的网站的时候都要打进去url里面。这样告诉一个去掉 CI框架里面入口文件的方法,其实也就是添加一个重定向操作。很多框架的操作的大同小异。 言归正转…. 1. LoadModule rewrite_module modules/mod_rewrite.so,把该行前的#去掉。 搜索 AllowOverride None(配置文件中有多处),看注释信息,将相关.htaccess的该行信息改为AllowOverride All。 2.在CI的根目录下,即在index.php,system的同级目录下,建立.htaccess,直接建立该文件名的不会成功,可以先建立记事本文件,另存为该名的文件即可。内容如下(CI手册上也有介绍): RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 如果文件不是在www的根目录下,例如我的是:http://localhost/CI/index.php/,第三行需要改写为RewriteRule ^(.*)$ /CI/index.php/$1 [L]。 另外,我的index

解决方案-企业管理-CI:百科

∥☆過路亽.° 提交于 2020-02-08 03:49:42
ylbtech-解决方案-企业管理-CI:百科 企业形象识别系统 企业形象识别系统CIS (Corporate Identity System), CI是英文Corporate Identity的缩写,有些文献中也称CIS,是英文Corporate Identity System的缩写, 直译 为企业形象识别系统,意译为 企业形象设计 。CI是指企业有意识,有计划地将自己企业的各种特征向社会公众主动地展示与传播,使公众在市场 环境 中对某一个特定的企业有一个标准化、差别化的印象和认识,以便更好地识别并留下良好的印象。 CIS一般分为三个方面,即企业的 理念识别 ——Mind Identity(MI), 行为识别 ——Behavior Identity(BI)和 视觉识别 ——Visual Identity(VI)。 企业理念 ,是指企业在长期生产经营过程中所形成的企业共同认可和遵守的价值准则和文化观念,以及由企业价值准则和文化观念决定的企业经营方向、 经营思想 和经营 战略目标 。 企业行为识别 是企业理念的行为表现,包括在理念指导下的企业员工对内和对外的各种行为,以及企业的各种生产经营行为。 企业视觉识别 是企业理念的视觉化,通过企业形象广告、 标识 、商标、品牌、产品包装、 企业内部环境 布局和厂容厂貌等媒体及方式向大众表现、传达企业理念

CI源码阅读-Loader.php

萝らか妹 提交于 2020-02-08 02:42:49
<?php /** * CodeIgniter * * An open source application development framework for PHP * * This content is released under the MIT License (MIT) * * Copyright (c) 2014 - 2018, British Columbia Institute of Technology * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software

ci 加载mymodel

☆樱花仙子☆ 提交于 2020-02-08 02:41:55
<?php /** * A base model with a series of CRUD functions (powered by CI's query builder), * validation-in-model support, event callbacks and more. * * @link http://github.com/jamierumbelow/codeigniter-base-model * @copyright Copyright (c) 2012, Jamie Rumbelow <http://jamierumbelow.net> */ class MY_Model extends CI_Model { /* -------------------------------------------------------------- * VARIABLES * ------------------------------------------------------------ */ /** * This model's default database table. Automatically * guessed by pluralising the model name. */ protected $_table; /** *

Codeigniter 利用加密Key(密钥)的对象注入漏洞

房东的猫 提交于 2020-02-08 02:40:59
http://drops.wooyun.org/papers/1449 原文链接:http://www.mehmetince.net/codeigniter-object-injection-vulnerability-via-encryption-key/ 0x00 背景 大家好,Codeigniter 是我最喜爱的PHP框架之一。和别人一样,我在这个框架中学习了PHP MVC编程。今天,我决定来分析一下Codeigniter的PHP 对象注入漏洞。 我在接下来的叙述中会把重点放在Codeigniter的Session会话机制上。所有我将会分析的method方法都在 CodeIgniter/system/libraries/Session.php 文件里。我在本研究过程中使用的是Codeigniter 2.1 版本。 0x01 Codeigniter Session会话机制 Codeigniter 使用PHP的序列化method方法来存储用户Session会话中的变量。但是Codeigniter Session会话机制并不像我们预期的那样工作。它把session会话的变量存在了客户端的cookie里面,大多数是在(服务器)硬盘上而不是用户COOKIE中。我不知道开发者们为什么这么设计。 下面的叙述摘自codeigniter的文档 The Session class stores

DevOps CI 实践及构想

走远了吗. 提交于 2020-02-07 07:55:54
前言 现分享CI(Continuous Integration)自动化实践中的一些经验与心得及相关远景构想,欢迎探讨。由于一些原因,隐藏了一些具体技术细节及实现方式,敬请谅解。 项目現状 项目产品由几十个应用组成,代码由不同的语言编制,同时也是跨OS平台。代码由Git托管,用相应的工具和程序打包和执行单元测试,Artitactory代管程序包,SonarQube实现代码检测及结果呈现,Jenkins整合CI流程及触发CD过程。 各个应用的Jenkins jobs 采用FreeStytle类型,在原有的基本模版上修改而成,随着应用功能的增减也就变得的多式多样了。 面临的问题 FreeStytle 类型不利于自动化的实施; 各应用Job的分散管理导致结果的不一致性。例如同一stage的名字都可能不一样的名称; 各应用的Jobs的特殊性,不利于集中管理。例如要增加一个通用过程的功能,必须告知各应用开发人员去更改相Job; 非集中式管理的各应用Job延缓了新功能的实施,降低了反应速度。例如要实CD的集成,必须对各应用Job分开修改测试; 新应用必须重新编制整个过程,上线速度太慢。 期望目标 实现Job的配置更新的可追踪性,便于管理; 保持CI过程的标准化和一致性,甚至包括名称的一致性; 实现同类或相似Job更改的自动化,提升响应速度; 降低Job与开发工作的相关性

配置Gitlab pages和Gitlab CI

你离开我真会死。 提交于 2020-02-03 09:54:31
  首先,Gitlab pages是很简单的,至少比起github pages要简单很多。   Gitlab Pages的原理这是样的:首先,当你新建一个Gitlab项目的时候,你同时也建了一个存储库。   只要你的工程目录的根目录下有.gitlab-ci.yml文件,注意必须严格起这个名字。gitlab runner就会执行这个脚本文件。   脚本的最终目的很简单:把静态文件放入名为public目录下的文件夹内。Gitlab pages会一直去这个存储库的public目录找。注意:这个public是指存储库的public,与项目结构无关。换言之,这个public目录不可见。   也就是说:当你在项目的根目录下添加了.gitlab-ci.yml,且在脚本中将静态文件正确地放入了public文件夹,gitlab page就会自动打开并部署,部署的域名将会默认分配。   当然,如果你不想使用默认的配置,而是想部署到特定的域名和服务器,则需要在yml文件中进行一些docker的配置。   开发者提交代码后,runner检索项目根目录下名为 .gitlab-ci.yml 的文件,并执行文件中的脚本,脚本内容包括项目的运行,打包,缓存打包文件,转移文件到 public 目录以供gitlab pages使用。而gitlab pages会到public目录中解析静态文件成页面。   好

LCS,LIS,LICS算法

会有一股神秘感。 提交于 2020-01-28 16:14:03
LCS,LIS,LICS算法 首先,要理解下子串子序列的含义: 子串:来源于原序列连续的一段。 子序列:来源于原序列中元素相对顺序不变的一段,不要求元素连续。 LCS(最长公共子序列) 给定两个序列A、B,设C[i, j]=LCS(Ai, Bj),其中Ai、Bj分别表示A从首元素到第i个元素的一段、B从首元素到第j个元素的一段, ai、bi分别表示A中第i个元素、B中第j个元素。则LCS的状态转移方程为: C[i, j] = 0. ( if i == 0 or j == 0 ) C[i, j] = C[i-1, j-1] + 1. ( if i,j > 0 and ai == bi ) C[i, j] = max(C[i-1, j], C[i, j-1]). ( if i,j > 0 and ai != bi ) 根据该递归方程可知,这是一个dp思想,实现就是构造出数组C。具体步骤如下: 先构造出第一行和第一列。 C[0, 0] ... C[0, j] ... C[0, n] ... C[i, 0] ... C[n, 0] 再依次构造出其余各行。 C[0, 0] ... C[0, j] ... C[0, n] ... ... ... ... ... C[i, 0] ... C[i, j] ... C[i, n] ... ... ... ... ... C[n, 0] ... C[n

jenkins-01初识jenkins

一世执手 提交于 2020-01-27 04:53:13
百度对持续集成的定义:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。 为什么写这篇文章:笔者在学习jenkins的过程中遇到了很多坑,且学习过程中好多搜到的资料过于零散,导致学习进度缓慢,想通过这篇文章,能让大家在学习的过程中少走弯路。虽然我预计这篇文章是做不到的,但是能够帮助到几位也是好的,以此为望,大家共勉。 Jenkins 是一个可扩展的持续集成引擎。 主要用于: l 持续、自动地构建/测试软件项目。 l 监控一些定时执行的任务。 Jenkins拥有的特性包括: l 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。 l 易于配置-所有配置都是通过其提供的web界面实现。 l 集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知。 l 生成JUnit/TestNG测试报告。 l 分布式构建支持Jenkins能够让多台计算机一起构建/测试。 l 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。 l 插件支持:支持扩展插件