当前位置: 首页 > 知识库问答 >
问题:

Mod Rewrite file.php?串

文寒
2023-03-14

我有一个老网站,链接如下:

http://domain.com/image.php?690

我想把它改成:

http://domain.com/old690

我试过许多不同的规则,例如:

重写规则^image.php?(.)旧的$1[L]

编辑:所有规则看起来像:

重新启动发动机

重写规则^admin/(*)忍者管理员/$1[L]

重写规则^index.php$-[L]

重写Cond%{REQUEST_FILENAME}!-f

重写cond%{REQUEST_FILENAME}-D

重写规则index.php[L]

重写规则^image.php \?(. ) old1美元[L]

什么是正确的重写规则,为什么?

共有2个答案

西门磊
2023-03-14

我用这个所以http://example.com/old4444转发到http://example.com/image.php?file=4444

此外,浏览器将在地址栏中保留http://example.com/old4444

RewriteCond %{QUERY_STRING} !marker  
RewriteCond %{QUERY_STRING} file=([0-9]+)
RewriteRule ^/?image.php$ %1? [R=301,L]
RewriteRule ^/?old([-a-zA-Z0-9_+]+)$ image.php?marker&file=$1 [L]
汪阳飇
2023-03-14

你在颠倒着做。

把这个代码放到你的htaccess里

RewriteEngine On
RewriteBase /

RewriteRule ^old([0-9]+)$ image.php?$1 [L]
RewriteRule ^admin/(.*)$ ninja-admin/$1 [L]
RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]


图像的规则如下

RewriteRule ^old([0-9]+)$ image.php?$1 [L]

它会将每个url像/old123(其中123是一个或多个数字)转发到image.php?123

编辑:如果你想禁止直接访问image.php?xxx,那么你可以这样做

RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} \s/image\.php\?([0-9]+) [NC]
RewriteRule ^ old%1 [R=301,L]

RewriteRule ^old([0-9]+)$ image.php?$1 [L]
RewriteRule ^admin/(.*)$ ninja-admin/$1 [L]
RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]
 类似资料:
  • 本文向大家介绍jQuery中如何将数组转化为json字符串,然后再转化回来?相关面试题,主要包含被问及jQuery中如何将数组转化为json字符串,然后再转化回来?时的应答技巧和注意事项,需要的朋友参考一下

  • 问题内容: 我正在使用休眠将对象映射到数据库。客户端(iOS应用程序)向我发送了JSON格式的特定对象,我使用以下实用程序方法将其转换为真实的表示形式 但是问题是,在我的pogo中,我将值存储为byte [],如下所示(因为这是存储在数据库中的内容-blob) 当然,现在转换失败了,因为它无法在byte []和String之间进行转换。 这是更改构造函数以接受String而不是字节数组,然后在设置

  • 问题内容: 我很难找到最简单的方法来针对给定的JSON模式字符串验证JSON字符串(作为参考,这是在Java中运行在Android应用程序中)。 理想情况下,我只想传入JSON字符串和JSON模式字符串,并且它返回关于是否通过验证的布尔值。通过搜索,我发现了以下两个有前途的库可以完成此任务: http://jsontools.berlios.de/ https://github.com/fge/j

  • 问题内容: 好的,问题是需要在2个表上进行合并或联接。一个文件的内容存储为[image]类型或varbinary(max),另一个文件的内容存储为十六进制字符串。如果我将相同的内容上传到两个表中 内容为字符串(从bytearray到字符串)看起来像这样… 图像的内容看起来像(这最终就是我想要的样子) 如果我选择我得到 看起来转换似乎已达到目标,但在每个之间放置了两个零(00),由于缺少更好的字词,

  • 问题内容: 如何在JavaScript中将字符串转换为整数? 问题答案: 最简单的方法是使用本机函数: 如果这对您不起作用,则有 parseInt , 一元加号 , 带有floor的parseFloat 和 Math.round 方法。 parseInt: 一元加号,如果您的字符串已经是整数形式: 如果您的字符串是浮点数或可能是浮点数,并且您想要一个整数: 或者,如果您要多次使用Math.floo

  • 问题内容: 我正在创建一个简单的登录页面,我想将登录名和密码参数作为UTF-8编码的字符串传递。正如您在下面的代码中看到的那样,第一行是我将编码设置为UTF-8的位置,但这似乎毫无意义,因为它不起作用。当我在重音符号中使用登录名和密码参数时,结果页面会收到奇怪的字符。 如何以一种适用于所有浏览器的方式正确设置字符编码? 问题答案: 在只设置响应的字符编码和所述HTTP的属性标题中。基本上,它告诉服

  • 问题内容: 查询中给定的(下划线)不适用。 例子 : 这匹配并带来了许多行,其中包含 可能有人请帮助如何在实现这一目标以及在?谢谢。 问题答案: 您是否尝试过转义: 而不只是。

  • 问题内容: 我需要在数据库中填充纬度和经度列,但是原始信息存储为单个字符串 例如。 我猜想TRIM命令在这里很有用,但是我不知道如何告诉它每半个部分都精确地停在逗号上。 我希望能够提出一个简单的UPDATE查询,如下所示: 但是显然在LTRIM和RTRIM部分中需要做一些额外的工作,因此我只选择数据,但不包括UDFChar1中的逗号。 关于如何实现这一目标的任何想法? 问题答案: 请试试: 和 样