私は自分のサイトでmodリライトをテストしています。私は単純なコードを試してみると思ったが、うまくいかなかった。私はルートディレクトリ(localhost)に.htaccessファイルを持っています。 localhostにはprofile.phpという名前のページがあります。 Profile.phpは私のデータベースから変数p
を取ることができます。つまり、localhost/profile.php?p=3
のようになります。ここで、3
は一意のIDです。私はlocalhost/profile.phpに行くとき?p = 3それは動作しますが、私がlocalhost/3に行くとき、それはしません。 404が見つかりません。get変数のModリライト(htaccess)が機能しない
の.htaccessファイル:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .* - [L]
RewriteRule ^(.*)$ http://localhost/profile.php?p=$1 [NC]
EDIT:
のhttpd.conf(現在):
<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
</Directory>
を動作しません、HTTP 'との点に注意してください:// localhost'前に、Apacheはリダイレクトしようと、内部で書き換えされていません。 –
@JonLinそれはどういう意味ですか?私はこれに新しいです。 – kirby