php 伪静态页面的问题

我最近在调试一个网站系统用的是PHP+Mysql。用.htaccess文件来实现伪静态。每次重新加载首页后,点伪静态页面的链接像点Wholesale第一遍都会提示404,... 我最近在调试一个网站系统用的是PHP+Mysql。 用.htaccess文件来实现伪静态。
每次重新加载首页后,点伪静态页面的链接 像点Wholesale第一遍都会提示404, 但是刷新一遍就没问题了。这到底是为什么啊?? 我把模板发给同学,相同的安装设置, 他的就没有问题。 唯一区别是我放在根目录下, 而他放在根目录/eshop 下。 .htaccess 里的路径还是我把他改成RewriteBase /eshop的。
http://www.lvedhardy.com/
展开
 我来答
ys5955092
2010-01-11 · TA获得超过671个赞
知道小有建树答主
回答量:551
采纳率:100%
帮助的人:571万
展开全部
按我的理解,你如果这么写:
rewriteengine on
rewritebase /eshop
rewriterule ^(.*)$ index.html.en [R=301]

那么它重定向的url应该是http://www.lvedhardy.com/eshop/index.html.en
而你想要定向的位置应该是http://www.lvedhardy.com/index.html.en
你本身这么写就是错误的,至于为什么刷新了就可以,我不太清楚

参考:
rewritebase / 的作用是如果在下面的rewriterule定义中被重写后的部分(此处为文件
名index.html.en)前面没有/,则是相对目录,相对于这个rewritebase后面的定义也就
是/usr/local/apache/htdocs/index.html.en,否则,如果此处没有rewritebase /这
一项,则被重写成
http://192.168.1.56/usr/local/apache/htdocs/manual/index.html.en ,显然是
不正确的。

不过这里我们也可以不用rewritebase / , 而改为
rewriteengine on
rewriterule ^(.*)$ /index.html.en [R=301]
或者
rewriteengine on
rewriterule ^(.*)$ http://192.168.1.56/index.html.en [R=301]

参考资料: http://www.phpfans.net/article/htmls/200908/MjgxOTc0.html

Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式