Apache htaccess 重写假设文件存在!

假设文件 data/cache/index.html 存在。那么才重写。

否则使用默认的MVC 重写。by [email protected]

RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/data/cache/list_1.html -f
RewriteRule ^game\/?

$ data/cache/list_1.html [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)$ index.php/$1 [PT,QSA,L]
RewriteRule ^(.*)$ index.php?/$1 [PT,QSA,L]

—————————————————————增强版 正则文件存在就重写 by [email protected]———————————————————

RewriteEngine on

RewriteCond %{DOCUMENT_ROOT}/demo/cache/game_$1.html -f
RewriteRule ^game\/(\d+)\/?$ cache/game_$1.html [L]

RewriteCond %{DOCUMENT_ROOT}/demo/cache/game.html -f
RewriteRule ^game\/?$ cache/game.html [L]
时间: 2024-10-13 16:25:04

Apache htaccess 重写假设文件存在!的相关文章

Apache htaccess 重写如果文件存在!

如果文件 data/cache/index.html 存在,那么才重写.否则使用默认的MVC 重写!by [email protected] RewriteEngine on RewriteCond %{DOCUMENT_ROOT}/data/cache/list_1.html -f RewriteRule ^game\/?$ data/cache/list_1.html [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_

解决URL中包含“%2F”导致Apache地址重写mod_rewrite失效的问题

在使用Apache地址重写mod_rewrite期间,发现,当URL和PATH_INFO中出现%2f(/)或者%5c(\), 会被认为这是个不合法的请求, Apache将会直接返回"404 (Not Found)"错误. 也就是说,Apache在调用 mod_proxy 或 mod_rewrite 模块之前,就直接拒绝请求,给出404错误. 这样做主要是为了防止CGI的安全漏洞发生,尤其是在脚本中使用了PATH_INFO但是又没有做安全过滤操作的话,很容易被注入漏洞. 假定URL是安全

openSUSE下配置Apache开启重写模块

这几天刚重装了系统,需要进行一大堆配置,笔者是一名LAMPer,当然要配置apache+php+mysql了,我用的发行版是opensuse13.1,. 安装好apache后,需要开启URL重写功能以配合项目的开发.打开apache的配置文件/etc/apache2/httpd.conf,找到AllowOverride None,改成AllowOverride ALL,再找到Option None改为Option FollowSymLinks .这样还不行,还要加载Rewrite模块. Rewr

Apache htaccess 设置 设置expires和max-age缓存 的兼容写法

htaccess文件内容: <pre name="code" class="plain"><IfModule mod_headers.c> <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$"> Header set Cache-Control "max-age=604800, public" </FilesMatch&g

(5) 如何用Apache POI操作Excel文件-----发现Apache的POI的Bug后,如何给Apache的POI报Bug?

在我上篇文章中,(4) 如何用Apache POI操作Excel文件-----发现了POI-3.12一个回归,通过测试POI-3.12的版本,我发现了一个bug,那么发现bug后,该如何处理.我们有2种处理方式,首先我们到Apache POI的bug库里面搜索,看别人有没有创建类似的bug,如果有创建的,这个是最好的结果,我们只需要关注这个bug什么时候被修复.如果没有搜索不到,这个时候我们就需要给Apache POI报bug了.那么,如何给Apache报Bug? 第一步: 打开https://

Apache不指定记录文件日志

编辑虚拟主机配置文件 在Errorlog和Customlog中间加入不指定记录文件日志的格式, 如下所示: ErrorLog "lam.com-error_log" SetEnvIf Resquest_URI ".*\.gif$" image-request SetEnvIf Resquest_URI ".*\.jpg$" image-request SetEnvIf Resquest_URI ".*\.png$" image

使用Apache POI 读取Excel文件

生活中用到用到Excel文件的情况很多,什么商品进货单,产品维修单,餐厅的营业额等等.作为程序员,我们该如何读取Excel文件,获取我们想要的资源呢.本篇将讲解如何使用Apache POI读取Excel文件. 准备工作: 1)Apache POI 开发jar包 2)Excel资源文件,包括Excel2003,Excel2007这两种版本分别对应xls.xlsx文件. 本篇已经为您做好准备工作,请点击此处,下载资源文件,你也可以浏览Apace POI官网了解更多详细信息. 简要流程: 获取Work

Apache commons-io实现单文件读取和写入

Apache commons-io提供了很多类,这里只介绍FileUtils类. FileUtils类提供了一些操作文件对象的实用方法,包括文件的读取.写入.复制和比较等. 比如逐句读取和写入一个文件可以使用如下方法: File file = new File("E:/data/a.csv"); List lines = FileUtils.readLines(file,"UTF-8"); FileUtils.writeLines(file2, lines, tru

apache开启重写模式

现在的好多的框架都使用有路由机制,但是如果在apache下,没有开启重写模式,服务器不会读取路由 所以今天要分享一下apache开启重写模式 ubuntu下: 1.在命令行下 sudo a2enmod rewrite   //开启扩展 或者是:   sudo ln -s /etc/apache2/mods-cuailable/rewrite.load  /etc/apache2/mods-enabled/rewrite.load 2.然后修改  /etc/apache2/sites-enable