0

私はこれらのようなURLを持っています:

site.com/user.html?id=2

site.com/user.html

必要なのは、「。html」を削除して同じページを返すことだけです。

site.com/user

「.html」の後に何かがある場合は、スラッシュを追加する必要があります

site.com/user/?id=2

とにかくhtaccessでこれを行うことはありますか?

私はjsとhtmlページのみを使用しています(サーバー側の言語は使用していません)

4

1 に答える 1

2

Apache .htacces Rewrite Ruleからコピー、貼り付け、編集して.phpファイル拡張子を削除します

Options +FollowSymlinks -MultiViews
RewriteEngine on

# to make `/path/index.html` to /path/
RewriteCond %{THE_REQUEST} ^GET\s(.*/)index\.html [NC]
RewriteRule . %1 [NE,R=301,L]

RewriteCond %{THE_REQUEST} ^GET\s.+\.html [NC]
RewriteRule ^(.+)\.html$ /$1 [NE,R=301,L,NC]

RewriteCond %{REQUEST_URI} !\.html$ [NC]
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule . %{REQUEST_URI}.html [L]
于 2012-05-21T19:00:55.047 に答える