Apacheの.htaccessについての質問です。
webにて可能な限り検索してみたのですが、該当する記事がありませんでした。
よろしくお願いします。
【環境】
・windows xp sp2
・xampp(apache 2)
【httpd.confの設定】
DocumentRoot "J:\foo"
<Directory "J:\foo">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
※)Jドライブは外付けHDDです。
【現象】
1.DocumentRootの「J:\foo」に.htaccessを設置した場合
1)http://localhost/でアクセス
→機能します
2)http://localhost/ver/でアクセス
→機能します
※)DocumentRootに.htaccessを設置した場合、通常の動作になる。
(サブディレクトリにもDocumentRootに設置した.htaccessの設定が有効になる)
2.「J:\foo\ver」に.htaccessを設置した場合(DocumentRootの.htaccessは除去)
1)http://localhost/ver/でアクセス
→機能しません
「2」を機能させたいのですが、どのような設定が必要なのでしょうか。
尚、念の為.htaccessの内容を以下に記します。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.html [L,QSA]
この.htaccessについてはレンタルサーバ上で動作確認済みである為、おそらくはhttpd.confの設定かと考えています。
または外部HDDにDocumentRootを設定しているのが問題かと・・・。
説明不足な点がございましたらご指摘頂けると幸いです。
以上、どうぞよろしくお願い致します。
No.3ベストアンサー
- 回答日時:
xamppは、昔入れてほったらかしてある環境なので、ざっと見た限りですが、httpd.confファイルに
Global Evironment
'Main' Server
の2つのセクションがありますが、整合性は大丈夫でしょうか?
(もし、最近のには/ダウンロードされたバージョンには、無いよってことでしたら、無視して下さい。)
ご回答ありがとうございます。
自己解決しましたのでご報告させて頂きます。
原因は.htaccessにRewriteBaseを設定していなかったことでした。
RewriteBase /foo
を追加することで解決いたしました。
今回の.htaccessの設定では、存在しないリクエストを全てhttp://localhost/index.htmlにRewriteしようというものでした。
1.RewriteBaseを書かなかった場合
→http://localhost/ver/aaaaa (存在しないURL)
結果:404となる。(http://localhost/foo/index.htmlにrewriteしてしまう)
2.RewriteBaseを書いた場合
→http://localhost/ver/aaaaa (存在しないURL)
結果:http://localhost/index.htmlにrewriteされる
RewriteBaseでベースとなるURL(今回の場合は/foo)を教えてあげないといけないとのことでした。
皆さん、お手伝い頂きありがとうございました。
改めてお礼申し上げますm(_ _)m
No.2
- 回答日時:
問題解決の切り分け提案ですが、参考URLのApacheのサイトにあるように、/varに一旦動作しない .htaccess を置いてみてエラーが出るか(=/var で問題なく .htaccess が動作する) を確認してみては如何でしょうか?
参考URL:http://httpd.apache.org/docs/2.2/ja/howto/htacce …
ご回答ありがとうございます。
1./var(DocumentRootでは無い、いかなるサブディレクトリ)にはどんな内容の.htaccessを置いても機能しません。
→意図的なエラーを含む.htaccessを置いてもエラーを吐きません。
2.httpd.confのDocumentRootセクションにはAllowOverride Allと設定しています。
→マニュアル通りに書いたつもりなのですが・・・
3.この.htaccessは別環境のサブディレクトリでは意図通りに機能します。
→ただし、その別環境のhttpd.confは参照不可
以上のことから.htaccessの問題ではなく、httpd.confに問題があると考えています。
もしくは上記にも書きました通り、外部HDDにDocumentRootを設定しているので、アクセス権限絡みかなとも思い権限をALLフリーにしてみたりと試してみてはいるのですが・・・
重ねてお礼申し上げます。
ご協力ありがとうございますm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL Mac です。ローカルホストの phpMyAdmin にアクセスできません。 1 2023/06/06 17:14
- その他(開発・運用・管理) 【至急】.htaccessによるディレクトリ単位でのリダイレクト 2 2023/08/10 13:46
- WordPress(ワードプレス) 投稿した文書の編集ができません。 1 2022/04/23 23:15
- WordPress(ワードプレス) httpからhttpsへのリダイレクト設定について 2 2022/04/17 09:49
- その他(プログラミング・Web制作) .htaccessの設定で、httpはhttpsに、且つ、wwwありに統一、の記述方法 2 2023/06/22 10:54
- その他(ブラウザ) このページは動作していません HTTP ERROR 401 2 2022/11/28 12:11
- その他(IT・Webサービス) 301リダイレクトの使い方について 7 2022/04/05 17:50
- フリーソフト イーファンビューでwebpファイルが開けません 1 2022/07/12 07:07
- その他(プログラミング・Web制作) .htaccessファイルの修正がこれで問題ないかどうか 1 2022/04/21 08:42
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
macX、ローカル環境:ブラウザ...
-
Apacheでphpが急に動かなくなった
-
IISで教えてください
-
ftpでのシンボリックリンク先へ...
-
レジストリを匿名アクセスから...
-
ラウンドロビン時はApacheでバ...
-
外付けHDのアクセス権の設定
-
Mac iPad で同期できるストレージ
-
ApacheのIP制限について
-
[Linux初心者]Ubuntu22.04.3LTS...
-
パソコンパスワード設定(変更?)
-
Postx社内PCからのみSMTP認証を...
-
Line友達追加について
-
SVNをADと連携させて、ユーザ/...
-
【apache】MaxClientsを超えた...
-
【急募】MEGAのオーセンティケ...
-
EPSONプリンタウィンドウの自動...
-
パソリRC-S380でモバイルSuica...
-
キーワード検索後、戻るボタン...
-
キーチェーンのリセット方法に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MACで、いらない黒枠が消えませ...
-
httpd IPアドレスによるアクセ...
-
phpのソースは見られてる?
-
phpMyAdmin.confでのIPアドレス...
-
macX、ローカル環境:ブラウザ...
-
apacheのVirtualHostの記述につ...
-
ディスプレイが白黒、ネガ、状...
-
IISで教えてください
-
Sambaのアクセス権について
-
個別のErrorDocumentの設定(Apa...
-
ftpでのシンボリックリンク先へ...
-
Apacheでphpが急に動かなくなった
-
Apache2でのバーチャルホストの...
-
外付けHDのアクセス権の設定
-
ubuntu、apache2で独自ドメイン...
-
外部から自宅のプライベートア...
-
ApacheとTomcatの連携が出来ない
-
Apacheの設定で、拡張子なしのU...
-
SUSサーバ、同期が取れません
-
VirtualHostの設定について
おすすめ情報