php - 使用htaccess将html页面扩展重定向到php扩展,但不使用参数

  显示原文与译文双语对照的内容
0 0

这就是我想要达到的目的。 我想重新定位这样的东西

http://www.example.com/news/news-seo-title-with-unicode-maybe.html

http://www.example.com/news.php?seo_url=news-seo-title-with-unicode-maybe.php

这是我在htaccess文件中写

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME}!-f
RewriteCond %{REQUEST_FILENAME}!-d
RewriteRule ^(.*)/(.*).html$ $1.php?seo_url=$2 [L]

我被重定向到 news.php,但 $_GET 变量中没有任何内容。 我的htaccess代码有错误?

时间:原作者:1个回答

0 0

可以使用:

Options +FollowSymlinks -MultiViews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME}!-f
RewriteCond %{REQUEST_FILENAME}!-d
RewriteRule ^([^/]+)/([^.]+).html$ $1.php?seo_url=$2 [L,NC,QSA]

选项 MultiViews 用于 Apache's content negotiation module 它在 mod_rewrite 之前运行,并使Apache服务器 MATCH 扩展成为。 所以 /file 可以在URL中,但它将服务 /file.php 。 需要关闭get参数才能传递。

原作者:
...