アドレスバーに表示したいもの:
http://facebook.com/user
http://facebook.com/user/ -> http://facebook.com/user
http://facebook.com/user/photos -> http://facebook.com/user/photos
私の書き換えルール:
RewriteEngine On
RewriteRule ^(.+)/$ $1 [NC]
RewriteRule ^([A-Za-z0-9_-]+)/?([A-Za-z0-9_-]*)$ user.php?id=$1&second=$2 [NC,L]
何が起こるのですか:
1). http://domain.com/user (working well)
2). http://domain.com/user/ (keeps the / in the address bar and destroys css/js/img paths)
3). http://domain.com/user/photos (same result as 2, correct except the paths)
パスを強制的に使用<base href="...">
すると、ページが正しく表示されます。しかし、私はそれなしで私の問題を解決したいと思います。
アドレスバーの末尾のスラッシュを削除するにはどうすればよいですか?書き直しは意図したとおりに機能しているようです。