1

以下の URL を変更するには、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]

しかし、問題があります。このルールにより、表示 URL が次のようになります。

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

最後のスラッシュの直後に htaccess で 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 に答える