1

私の .htaccess コードは次のとおりです。

  Options +FollowSymLinks 
  RewriteEngine On
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/|#(.*))$
  RewriteRule ^(.*)$ $1/ [R=301,L]

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME}\.php -f
  RewriteRule ^([^\.]+)/$ $1.php

www.domain.com/login リンクを使用すると、次の www.domain.com/login/ が返されるので、うまく機能します。唯一の問題は、私の href リンクが次のようになることです: www.domain.com/login/login これは非常に悪いです。もちろん、それをクリックすると、通常の 404 エラーが表示されます。

誰でもこの問題を回避できますか!

4

1 に答える 1

1

相対パスと絶対パスの問題のように聞こえます。にリダイレクトされる/login/と、ベース URI/login//. したがって、href を絶対 URI にするか、ベースを指定します。

<a href="/login/">link</a>

または、これをページのヘッダーに追加します。

<base href="/">
于 2012-12-18T22:58:12.550 に答える