人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Apache の設定の質問。
以下の3つのフォルダがあったとします。
1) ~/public_html/
2) ~/public_html/a/
3) ~/public_html/b/

1) は 80番ポートのみ
2) のフォルダ配下は 80番, 443番のいづれもOK
3) のフォルダ配下は 443番ポートのみ

の httpd.conf はどうやって書けばよいですか?
Apache1.3 および 2.x の両方を教えてください。

●質問者: naoponsub
●カテゴリ:インターネット ウェブ制作
✍キーワード:Apache httpd フォルダ 番ポ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● goodvn
●35ポイント

mod_rewrite が使える前提です

<Directory ~/public_html>
RewriteEngine on
RewriteCond %{SERVER_PORT} !80
RewriteRule .* [F]
</Directory>

<Directory ~/public_html/a>
RewriteEngine on
RewriteCond %{SERVER_PORT} !80
RewriteCond %{SERVER_PORT} !443
RewriteRule .* [F]
</Directory>

<Directory ~/public_html/b>
RewriteEngine on
RewriteCond %{SERVER_PORT} !443
RewriteRule .* [F]
</Directory>

もし,ディレクトリの配置が,

~public_html 80 443

~public_html/a 80 のみ

~public_html/b 443 のみ

なら違う方法もあります(VirtualHost ディレクティブ参照)

ポート番号から察するに,SSL 関係だと思うので,ポート指定というより,SSL の有無で動作を変えるほうが良いと思います(つまり上記の書き方より,良いソリューションがある)

◎質問者からの返答

ふむふむ。お察しのとおりです。質問の仕方が安易でした。

「良いソリューション」という物を教えていただけますか?

はてなポイント +100 でどうでしょう?

(個別のポイント送付を使うので信頼関係が必要ですが…それとも質問打ち切り時に付与できたっけ!?)

P.S

上記の mod_rewrite 使った回答は 1.3 と 2.0 の両方に共通でしょうか?


2 ● goodvn
●65ポイント

はしょってしまいますが,

NameVirtualHost *:80
NameVirtualHost *:443

<VirtualHost *:80>
 DocumentRoot /usr/local/www/data
</VirtualHost>

<VirtualHost *:443>
 DocumentRoot /usr/local/www/data_ssl
 SSLEngine on
</VirtualHost>

と書くことで,各ポートごとに,ディレクトリを分けることができます

Apache 1.3 の環境が手元に無いので確かめられませんが,mod_reweite の方法,NameVirtualHost とも,1.3 でも大丈夫なはずです(ドキュメントを見る限りも,制約はなさそうです)

ポイントについては気にされなくて結構ですので,普通の配分で大丈夫です

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ