どのように私は自分のホームディレクトリに動作するようにmod_rewriteを得るのですか?
質問
私は私のPHPファイルは、このディレクトリの下にはFreeBSDの下に保存されています:
/home/david/public_html/code/php
私のブラウザでは、私はこのURLからアクセスます:
http://192.168.6.7/~david/code/php
そして私は、URLを書き換えるのhtaccessファイルを持っています:
RewriteEngine on
RewriteRule ^test test.php
しかし、私は http://192.168.6.7/~david/code/に行くときPHP /テストに私のブラウザでは、私はこのエラーを取得します:
Not Found
The requested URL /home/david/public_html/code/php/test.php
あなたが見ることができるように、書き換えルールはtest.phpをにテストをリダイレクトしようとすることに成功しています。しかし、何らかの理由でそれが失敗しました。
私はapacheのエラーログファイルにこれを見つけました
File does not exist: /usr/local/www/data/home
誰もがこの問題を解決する方法を知っていますか? 私は私のホームディレクトリをWebディレクトリにこれを入れていない場合ちなみに、すべてが正常に動作します。
解決
/~david/code/php/
のでRewriteBase
するためにベースURLパスを設定します。 :
RewriteBase /~david/code/php/
また、 UseDir
するに設定することを明確にする必要がありますpublic_html
。 Apacheのマニュアルにの のユーザ毎のウェブディレクトリも参照してください。 のます。
所属していません StackOverflow