よろしくお願いします。
これが私がいる場所であり、私が達成しようとしていることです。
- / home / username / code / project /static/に静的ファイルがあります
- 私のドキュメントルートは/home/ username / public_html /(これは私の.htaccessファイルがある場所です)です。
.htaccessファイルで次のものを使用しようとしています(httpd.confにアクセスできません)。
RewriteRule ^(static/.*)$ /home/username/code/project/static/ [L]
しかし、mod_rewriteのドキュメントを正しく理解している場合(以下を参照)、「/ home / username / code / project / static /」は、ドキュメントルートに相対的なファイルシステムパスとして、または絶対パスとしてではなくURLパスとして扱われます。意図したとおりのファイルシステムパス。
「〜/ code / project / static/」と「../code/project/static/」を使用しようとしましたが、自分のページにアクセスしようとすると内部サーバーエラーが発生しました(はい、私は少し初心者です)。
だから私の質問は:.htaccessコンテキストで使用される書き換えルールを私のDocumentRootに相対的なパスではなく絶対ファイルシステムパスに置き換える方法はありますか?
参照用にmod_rewriteドキュメントからの抜粋を次に示します(完全な情報はここにあります:http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule):
たとえば、/ www / file.htmlの置換文字列を指定した場合、ルートまたはファイルシステムにwwwという名前のディレクトリが存在しない限り(または、書き換えを使用する場合は)、これはURLパスとして扱われます。ドキュメントルートを基準にした.htaccessファイル内)。この場合、ファイルシステムパスとして扱われます。
どんな助けでも大歓迎です:)
ありがとう!