Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >PHP RewriteRule与缓存相结合

PHP RewriteRule与缓存相结合
EN

Stack Overflow用户
提问于 2019-06-03 10:13:44
回答 1查看 28关注 0票数 0

我的问题是,位于像: test.example.com/这样的位置上的.htaccess文件不会重定向。我怀疑这是因为同一个文件中的缓存规则。我认为它们可能会干扰,但是,我对.htaccess文件没有经验,所以我可能完全错了。有人能帮我重定向吗?

代码语言:javascript
运行
AI代码解释
复制
test.example.com/s/home

to:

test.example.com/?s=home

用户应该输入: test.example.com/s/home,然后test.example.com/index.php应该能够不需要urlbar中的url更改为test.example.com/?s=home的$_GET"s“。

我尝试了很多在堆栈溢出上显示的例子,但它们对我没有用。

代码语言:javascript
运行
AI代码解释
复制
<IfModule mod_headers.c>
Header set Cache-Control "max-age=0, private, no-cache, no-store, must-revalidate"
</IfModule>

RewriteEngine on
RewriteRule ^/s/$ /?s=$1

,这不管用!^

我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-03 10:51:05

对于您所要求的特定任务,考虑到您对index.php路由脚本的额外提及,我建议从以下起点开始:

代码语言:javascript
运行
AI代码解释
复制
RewriteEngine on
RewriteRule ^/?s/(\w+)/?$ /index.php?s=$1 [END,QSA]

不过,你可能不得不根据你的具体情况来调整它。

如果使用上面的规则接收到内部服务器错误(http状态500),那么很可能您操作的是apache http服务器的一个非常旧的版本。在这种情况下,您将在http服务器错误日志文件中看到对不支持的[END]标志的明确提示。您可以尝试升级或使用旧的[L]标志,在这种情况下,它可能会同样工作,尽管这在一定程度上取决于您的设置。

此规则同样适用于http服务器主机配置或动态配置文件(".htaccess“文件)。显然,重写模块需要加载在http服务器中,并在http主机中启用。如果使用动态配置文件,则需要注意主机配置中完全启用了它的解释,并且它位于主机的DOCUMENT_ROOT文件夹中。

请注意:与使用动态配置文件(".htaccess")相比,您应该始终倾向于将此类规则放置在http服务器主机配置中。这些动态配置文件增加了复杂性,常常是意外行为的一个原因,很难调试,而且它们确实减慢了http服务器的运行速度。它们仅作为最后一种选择,用于您无法访问真正的http服务器主机配置(阅读:真正便宜的服务提供者)或坚持编写自己的规则的应用程序(这显然是一场安全噩梦)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56432527

复制
相关文章
php rewriterule 规则,如何将一条RewriteCond 对应多个RewriteRule规则
RewriteCond是对RewriteRule的条件筛选,一般情况下一个RewriteRule前面有多个RewriteCond,我们想让bbs这个子域名下的链接访问bbs这个目录,而其他子域名则访问web这个子目录,于是有了下面这种写法。
全栈程序员站长
2022/08/28
5330
RewriteRule指令[通俗易懂]
作为RewriteRule指令的第三个参数。 Flags是一个包含以逗号分隔的下列标记的列表:
全栈程序员站长
2022/08/27
3910
RewriteCond RewriteRule
## Rules for TR and ES country sites RewriteCond %{REQUEST_URI} ^/(tr|es)$ [NC] RewriteRule ^(.*) https://xx.com [L,R=301] ##
全栈程序员站长
2022/09/01
2170
Apache的URL地址重写(RewriteCond与RewriteRule)
大家好,又见面了,我是你们的朋友全栈君。Apache的URL地址重写 http://hi.baidu.com/sonan/blog/item/c408963d89468208bba16716.html 第一种方法:Apache环境中如果要将URL地址重写,正则表达式是最基本的要求,但对于一般的URL地址来说,基本的匹配就能实现我们大部分要求,因此除非 是非常特殊的URL地址,但这不是我要讨论的范围,简单几招学会Apache中URL地址重写,通过实例展示,轻松学会URL地址重写: URL实例
全栈程序员站长
2022/06/30
2.4K0
重定向 rewriteRule
大家好,又见面了,我是你们的朋友全栈君。 重定向学习视频 https://www.imooc.com/learn/798 1、RewriteRule R 说明 RewriteRule ^/?(.
全栈程序员站长
2022/08/28
3.6K0
重定向 rewriteRule
PHP 浏览器缓存_php缓存引擎
浏览器缓存动态内容,缓存的内容在浏览器本地,而内容由web服务器生成,任何一方都不可能完成这一系列过程,他们之间有一种沟通机制,这就是缓存协商.
全栈程序员站长
2022/11/07
2.1K0
SNI代理与DNS解析相结合
在当今互联网时代,加密通信已成为保护用户隐私和数据安全的重要手段。而使用HTTPS协议进行加密传输更是日益普及。然而,在构建一个高效且灵活的HTTPS代理服务器时,我们常常面临着一些挑战。
华科云商小孙
2023/09/04
6140
Apache 中RewriteRule 规则参数[通俗易懂]
大家好,又见面了,我是你们的朋友全栈君。[size=medium] Apache 中RewriteRule 规则参数 Apache模块 mod_rewrite 提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求。它支持每个完整规则可以拥有不限数量的子规则以及附加条件规则的灵活而且强大的URL操作机制。此URL操作可以依赖于各种测试,比如服务器变量、环境变量、HTTP头、时间标记,甚至各种格式的用于匹配URL组成部分的查找数据库。
全栈程序员站长
2022/08/28
3.5K0
php缓存技术
1、全页面静态化缓存 也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系 统中比较常见,比如dedecms; 一种比较常用的实现方式是用输出缓存: Ob_start() ******要运行的代码******* $content = Ob_get_contents(); ****将缓存内容写入html文件***** Ob_end_clean(); 2、页面部分缓存 该种方式,是将一个页面中不经常变的部分进行静态缓存,而经常变化的块不缓存,
joshua317
2018/04/16
3.6K0
WeTrust-将储蓄与区块链相结合
我们之前曾研究过区块链对于没有银行帐户的人的作用。WeTrust是一家小额信贷的创业公司,该公司正准备加速在新兴市场中引入分散式小额贷款模式。
飞翔的猪脚粉
2018/03/21
1.5K0
WeTrust-将储蓄与区块链相结合
PHP缓存技术介绍
缓存是指临时文件交换区,电脑把最常用的文件从存储器里提出来临时放在缓存里,就像把工具和材料搬上工作台一样,这样会比用时现去仓库取更方便。因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在忙完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给GPU用的缓存,硬盘上也有16M或者32M的缓存。千万不能把缓存理解成一个东西,它是一种处理方式的统称!
用户7657330
2020/08/14
2.5K0
Apache中 RewriteRule 规则参数介绍
大家好,又见面了,我是你们的朋友全栈君。Apache中 RewriteRule 规则参数介绍
全栈程序员站长
2022/08/27
12K0
关于pyecharts可视化与Flask相结合
关于pyecharts和flask结合的案例不多,查阅了数十篇文章,尝试了若干遍,感觉还是不理想,最大的问题在于对echarts的理解上,对我而言,又需要向上推到ajax,jquery,bootstrap,html,css,javascript等等,有点超出了我的技能范围,所以最大程度的做到能用就够了,复用和进一步优化看起来还是遥遥无期。
python与大数据分析
2022/03/11
1.3K0
关于pyecharts可视化与Flask相结合
当移动技术与云计算相结合
移动技术使我们的生活发生的颠覆性的变化,可以这么说,目前我们所有人都生活在一个移动的世界中,生活中充斥着各种各样的移动设备,如智能手机、平板电脑,甚至在不久的将来会无处不见的可穿戴设备。而与移动技术相比有过之而无不及的另一项技术——云技术,它的实践也在不断地改变着移动行业。 虽然云技术促进了移动行业的高速发展,但想达到十全十美还有好长一段距离。而且对云技术你是否利用的很到位,本文介绍了三个移动技术不可错失的云实践。 备份应用数据 过去一段时间,我使用了几个Android系统的手机。与较旧
静一
2018/03/16
1.1K0
数字藏品系统与文旅相结合
背景:某文旅企业为了提升自身品牌影响力和用户粘性,决定开发一套基于自建联盟链的数字藏品系统,将其旗下的各类文化和旅游资源进行数字化转化,打造独特的文旅数字藏品,并通过区块链技术保证其唯一性、稀缺性和可信性,同时提供线上线下的交互体验,吸引更多年轻人参与。
飞机号dapp119
2023/03/10
3480
数字藏品系统与文旅相结合
Seata分布式事务 (理论与部署相结合)
在数据库水平拆分、服务垂直拆分之后,一个业务操作通常要跨多个数据库、服务才能完成。例如电商行业中比较常见的下单付款案例,包括下面几个行为:
不吃紫菜
2023/03/08
1.3K0
Seata分布式事务 (理论与部署相结合)
小程序可以与AI相结合的几种方式
语音识别和语音交互:小程序可以通过集成语音识别技术,实现语音输入和语音交互功能。用户可以通过语音进行搜索、下单、查询等操作,提高用户的操作便捷性。
飞梦工作室
2023/07/07
3280
玩玩Memcache缓存组件For PHP
前言 几乎每次面试都会有一个很基本的问题,实习生的基本问题,那就是 如何优化数据库或减少数据库的压力? (1) 合理增加索引 (2) 优化SQL语句 (3) 主从配置(读写分离) (4) ... 注意:除了上面的几点外,我们还可以使用缓存机制,比如Redis、Memcache等等 ---- Memcache简介 Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。Memcac
AlicFeng
2018/06/08
1.8K0
PHP实现静态文件缓存
静态文件缓存一般是指在web 应用中,将图片、js、css、视频、html等静态文件或资源保存到磁盘中,以提高资源响应时间,减少服务器压力和资源开销的一门缓存技术。
素浅
2020/12/18
2.2K0
http缓存与离线缓存
一、http协议实现缓存 1. 缓存头部 通用缓存、条件缓存、缓存控制三大类 头部名称 说明 请求/响应 通用缓存头部 控制客户端是否向服务器发送请求或者是服务端响应请求 cache-control 用于随报文传递的缓存提示 pragma http1.0的,等于cache-control:no-cache,pragma优先级高于expires 条件头部 Last-Modified 服务器响应时将文本最后修改时间放在此头部一起传送,如:Last-Modified:
sam dragon
2018/01/17
1.5K0
http缓存与离线缓存

相似问题

RedirectMatch与RewriteRule相结合

12

.htaccess将多个RewriteCond与多个RewriteRule相结合

10

PHP过程与OOP相结合

13

PHP与HTML代码相结合

40

将图像与PHP GD相结合

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文