微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

.htaccess php 中的重定向规则

如何解决.htaccess php 中的重定向规则

我想将此 URL http://www.example.com/blog/Title-here 重定向到我的 blog.PHP 页面

请注意 Title-here 可以是任何东西。

我该怎么做?

我正在尝试关注,但它不起作用。

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog/(.*)/?$ blog.PHP [NC,L]

我不知道为什么。

以下是我的完整 .htaccess 代码,可能是这里的问题。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/(.*)/?$ product.PHP [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/?$ results.PHP [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/?$ results.PHP [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog/(.*)/?$ blog.PHP [NC,L]

ErrorDocument 404 http://www.example.com/404.PHP

解决方法

根据您展示的样品,您可以尝试以下操作吗?由于您使用的是非常通用的正则表达式(未在其中提供任何 uri 条件),因此它没有达到您博客页面的最后一条规则。将其作为您的第一条规则,如下所示。我还在所有现有规则中修复了您的正则表达式。

请确保在测试您的 URL 之前清除浏览器缓存。

###Making Rewriteengine ON here.
RewriteEngine ON

##Placing rule for URIs starting from blog here.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog  blog.php [NC,L]

##Placing rule for url like: http://localhost:80/test1/test2/test3
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(?:[^/]*)/(?:[^/]*)/(?:.*)/?$ product.php [L]

##Placing rule for url like: http://localhost:80/test1/test2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(?:[^/]*)/(?:.*)/?$ results.php [L]

##Placing rule for url like: http://localhost:80/test1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ results.php [L]

ErrorDocument 404 http://www.example.com/404.php

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。