dql123000 2016-07-15 18:58
浏览 50

如何使用mod_rewrite进行基本的URL重写

I don't understand why but when I use this:

#RewriteRule ^/?r/(.*)$ /index.php?n=$1 [L]

to rewrite mysite.com/r/somewhat to mysite.com/index.php?r=somewhat the site work.

But if I use this:

#RewriteRule ^/?(.*)$ /index.php?name=$1 [L]

to rewrite mysite.com/somewhat to mysite.com/index.php?r=somewhat, my site stop working.

I don't understand why. Someone can help me?

How can I rewrite mysite.com/somewhat to mysite.com/index.php?r=somewhat?

  • 写回答

1条回答 默认 最新

  • douyeke2695 2016-07-15 19:04
    关注

    Your 2nd rule will cause infinite looping since target URI /index.php?r=somewhat also matches .*. Eventually it causes 500 internal server error.

    To fix you need to avoid rewriting files and directories using RewriteCond like this:

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^/?(.+)$ /index.php?r=$1 [L,QSA]
    
    评论

报告相同问题?

悬赏问题

  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果
  • ¥15 html5+css和javascript有人可以帮吗?图片要怎么插入代码里面啊
  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算