htaccess重写工作但不是所有规则

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了htaccess重写工作但不是所有规则相关的知识,希望对你有一定的参考价值。

这些是我在.htaccess文件中的规则。

Options -MultiViews

# Turn Rewrite Engine On
RewriteEngine on

# Rewrite for login.php
RewriteRule ^Login login.php [NC,L]

# Rewrite for myaccount.php
RewriteRule ^Myaccount myaccount.php [NC,L]

# Rewrite for index.php
RewriteRule ^Home index.php [NC,L]    

# Rewrite for post-images.php?post=xxxx
 RewriteRule ^Postimages/([0-9a-zA-Z_-]+) post-images.php?post=$1 [NC,L]

所有规则都运行正常,但最后一个。 post-images.php页面完全有效,如果我直接使用网址而不是重写网页。它的表现

未找到

在此服务器上找不到请求的URL / PostImages / 135。

此外,尝试使用ErrorDocument处理请求时遇到404 Not Found错误。

答案

嗯,我试着编辑你的RewriteRule并编辑它来制定这个规则:

RewriteRule ^Postimages/(.*)$ http://www.yourwebsite.com/post-images.php?post=$1 [R=301,L]

它对我有用,你会介意尝试吗?

以上是关于htaccess重写工作但不是所有规则的主要内容,如果未能解决你的问题,请参考以下文章

需要在 .htaccess 重写规则中转义 # (hash/pound) 字符

从 HTACCESS 文件中的所有 ISAPI 重写 3 规则中排除目录

重写子文件夹而不是主网站的规则

symfony2 重写规则 .htaccess app.php

子文件夹中的重写规则

除了我在 htaccess 中的第一条规则之外,我如何重写所有内容?