Rewritebase解决有.htaccess文件却不能伪静态化 htaccess rewrite

为了不影响本身电脑的使用,在vmware workstation的系统上装了wamp,来学习点电脑方面的知识。

这几天在研究shopex和ecshop伪静态的问题,虽然到目前为止达到了传统意义上伪静态的,但是不是自己想要的那种。我想要的是万表网的那种效果,如:

品牌分类URL效果:

商品详情URL效果:

可以说,这种URL格式无论对搜索引擎还是用户体验来说,都是非常好的。怎么实现呢?这就是我目前一直在思考的问题。(网上有插件买,蛮贵的,穷苦的人伤不起)

扯远了。

了解Rewritebase作用的实验步骤:(以下所有前提都建立在你打开了Aphach的mod_rewrite模块)

1、在根目录写一个product.php文件,内容可为:

<?php
// display product details
echo 'You habe selected product #' . $_GET['product_id'];
?>

2、再在根目录写一个.htaccess文件,内容为:

RewriteEngine On

# Translate my-super.product.html to/product.php?product_id=123
RewriteRule ^my-super-product.html$/product.php?product_id=123

3、然后在浏览器中打开动态:

4、再在浏览器中打开静态:

4、可以说在根目录下,这样的rewrite规则是正确的。

5、接着,我们在根目录下建一个名为seophp的文件,把之前的product.php和.htaccess移进去,再打开,我们先打开动态,依旧出现:

可是打开静态时,却出现404错误。



6、如何解决这个问题,我们需要对.htaccess进行修改,

如下:

RewriteEngine On

Rewritebase /seophp

# Translate my-super.product.html to product.php?product_id=123
RewriteRule ^my-super-product.html$ product.php?product_id=123

7、保存后再打开静态,则成功:



总结:
1、Rewritebase是用来指定一个新的位置来作为重写规则的根目录。

2、因为不用重写根目录,所以要去掉重写的URL地址前面的斜杠

PS:突然发现have写成了“habe”,大家无视吧~o(∩_∩)o~

  

爱华网本文地址 » http://www.aihuau.com/a/25101018/374476.html

更多阅读

IE浏览器不能上网解决方法一) ie浏览器不能上网

IE浏览器不能上网解决方法(一)——简介IE浏览器不能上网也是大家比较常见的问题了,下面把这个问题总汇,希望对大家有所帮助。IE浏览器不能上网解决方法(一)——方法/步骤IE浏览器不能上网解决方法(一) 1、网络设置的问题  这种原因比

CAD 鼠标中键不能平移解决方法 cad鼠标滚轮不能平移

1.按下键盘的快捷键“Win徽标+Pause/Break”,打开“系统属性”窗口;2.在“系统属性”窗口中点击“高级”选项卡,单击下方的“环境变量”按钮;3.在打开的“环境变量”对话框中的“系统变量”列表中新建“mbuttonpan”项,变量值为“1”;

文件或文件夹不能重命名 文件夹不能重命名中文

文件或文件夹不能重命名——简介在日常对电脑中的一些的文件或者文件夹操作的时候,windows系统可能会弹出相应的对话框,提示我们文件或者文件夹无法重命名。这是由于文件或者文件夹中的文件被系统某些正在运行的进程占用的。我们可以

IE不能上网浏览的原因和解决办法 ie内核浏览器不能上网

相信大家也有遇到过像IE不能上网浏览的问题。下面就来给大家介绍一下常见原因和解决方法:一、网络设置的问题这种原因比较多出现在需要手动指定IP、网关、DNS服务器联网方式下,及使用代理服务器上网的。仔细检查计算机的网络设置。二

声明:《Rewritebase解决有.htaccess文件却不能伪静态化 htaccess rewrite》为网友不甘示弱分享!如侵犯到您的合法权益请联系我们删除