1

我需要使用 htaccess 更改以下网址:

http://example.com/main/en/index.php?page=pages&page_id=9

到:

http://example.com/main/en/pages/9.html

我按照以下规则完成了它:

RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)\.html$ /main/fa/?index.php?page=$1&page_id=$2 [L]

但是有一个问题,这条规则使我的显示网址为:

http://example.com/pages/9.html

我想在最后一个斜杠之后更改 url。

因为我必须有不止一种语言,它会与其他语言发生冲突。我该如何写这个规则?

4

1 回答 1

0

也许这就是你正在寻找的:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}  ([^/]+)/([^/]+)/([\d]+)\.html/?   [NC]
RewriteRule  .*          main/%1/index.php?page=%2&page_id=%3 [L]

将在内部重定向:

http://example.com/main/LangCode/PageName/PageID.html

到:

http://example.com/main/LangCode/index.php?page=PageName&page_id=PageID

于 2013-01-11T19:56:20.770 回答