まず、ホスティング会社に確認したところ、上書きを許可する設定が有効になっていることが確認されました。
次に、ガベージ値を .htaccess ファイルに書き込むと、「内部サーバー エラー」が発生します。これは、.htaccess がスキップされていないことをさらに証明します。
私はこれをやろうとしています 入力: all/3 出力: all.php?id=3
チュートリアルサイトからコピーした .htaccess ファイルに次のように書きました。
# Enable Rewriting
RewriteEngine on
# Rewrite user URLs
# Input: user/NAME/
# Output: user.php?id=NAME
RewriteRule ^all/(\w+)/?$ all.php?id=$1
all.php ファイル
<?php
echo $_GET['id'];
?>
入力するlocalhost/all/3
と、3が表示されます。
入力するwww.mydomain.com/all/3
と、ページは空白になります。
また、.htaccess ファイルには上記のコードのみがあり、多かれ少なかれ何もありません。では、localhost とサーバーで異なる動作が発生するのはなぜですか?