首页 > 原创文章 > 软件开发 > 查看文章

CodeIgniter框架URL如果去掉index.php(真实有效)

所属分类:软件开发 来源: 丁老师原创 更新时间:2024-09-12 08:48 浏览: 4979 IP属地: 深圳

在使用PHP框架CI时,有个很恶心的地方就是他的URL需要带上index.php,比如我要建一个user模块,想要实现www.xxx.com/user/的效果,但是在CI框架下必须要www.xxx.com/index.php/user这样才能打开。

翻了下官方文档以及百度谷歌了下相关查询,网上的资料大多都不能用,全是虚假或过时了的信息,什么修改config,设置index_page为空,根本没用。经过丁老师的深入研究,发现了解决办法,什么都不用改,只需要3个步骤即可实现:

1.配置网站的nginx rule(宝塔直接在网站属性中设置):

location / {
    if (!-e $request_filename){
        rewrite  ^(.*)$  /index.php?s=$1  last;   break;
    }
}


2.在controller目录下增加php文件,User.php,代码如下:

<?php
defined('BASEPATH') or exit('No direct script access allowed');
class User extends CI_Controller{
    public function index(){
       echo "user_Index";
       exit;
    }
}


3.打开config目录下的route.php文件,最底部添加两行:

$route['user']='user/index';
$route['user/(:any)']='user/$1';


大功告成!哪有那么复杂!有在使用CI框架中遇到难题的,尽管+v问我!

标签:

相关文章

PHP网页报DOMDocument::loa...

PHP网站,网页打开不正常,显示“DOMDocument::loadHTML(): Tag header invalid in Entity”错误代码,是怎么回事呢?其实,这是php程序中,使用了new DOMDocument的load...

微信支付接口设置fee_type=usd无效...

在开发微信支付,和微信统一下单接口对接时,发现传递的fee_type参数只能设置为'CNY',无法设置为'USD'、'HKD'等其他货币。官方文档上对fee_type参数的描述,可以支持多...

Moment.js设置英文为中文的方法

Moment.js是一个不错的时间处理类js封装包,从官网下载默认是英文的,比如moment().format('dddd')显示出来是Tuesday,如果要显示中文的话,有两种方法:1.moment-with-loca...

性价比最高的内网穿透方案

内网穿透,是指外网可以访问内网,没有固定IP的服务器,所以需要中间件来进行通讯,目前稳定成熟的中间件软件,要么价格太贵,要么就是只能使用标准服务,不能完全的定制化。那么,到底有没有一个性价比最优的方案呢?回答是肯定的,答案就是使用云服务...

推荐文章

IntelliJ/phpstorm/webs...

在使用jet brains的ide开发代码时,经常性的会输入单引号或双引号,ide默认有对于引号的自动完成功能,即输入一个引号,自动显示两个,这一点其实做的很不智能,因为在使用时经常会有显示出3个的情况,那么怎么关闭这个功能呢?file-s...

PhpStorm怎么取消html文件中sty...

phpstorm程序中,在打开html时总会出现对 style属性的折叠和隐藏,这样在检查代码的时候非常不直观,容易漏掉很多东西,非常的不方便,如图:

IDEA IDE换行自动显示的}括号如何去掉

在使用idea旗下的产品,如intellij idea,php storm,web storm时,有的时候编辑前端页面JS,在换行时经常会自动出现个}大括号,这一点程序不是很智能,其实后边都已经有括号了。比如下图这样:那么如何解决这个问题呢...

BT宝塔升级方法

由老版本7.2自动升级时,会出现很多问题,建议在终端手动升级。升级命令:curl http://download.bt.cn/install/update_panel.sh|bash

当前在线
免费咨询