Apache関連 Part11
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001名無しさん@お腹いっぱい。
2008/09/30(火) 08:11:00http://httpd.apache.org/
●インストール済みApacheの詳細情報の調べ方
httpd -h 簡易ヘルプ
httpd -v バージョン情報
httpd -V コンパイル条件など詳細な情報
httpd -l 静的リンクされたモジュール一覧
httpd -M 現在の設定ファイルで読み込まれるモジュール(2.2以降)
●公式マニュアル
http://httpd.apache.org/docs/1.3/ Apache 1.3
http://httpd.apache.org/docs/2.0/ Apache 2.0
http://httpd.apache.org/docs/2.2/ Apache 2.2
●ディレクティブ一覧
http://httpd.apache.org/docs/1.3/mod/directives.html
http://httpd.apache.org/docs/2.0/mod/quickreference.html
http://httpd.apache.org/docs/2.2/mod/quickreference.html
前スレッド
Apache関連 Part10
http://pc11.2ch.net/test/read.cgi/unix/1179627714/
0845名無しさん@お腹いっぱい。
2012/06/14(木) 00:02:46.49レポート楽しみにしてるよ
0846名無しさん@お腹いっぱい。
2012/06/18(月) 18:59:16.75mrubyって require 機能が無いんだな (mrubyコアに組み込みコンパイルする必要がある)
sockも無いので、DBとのインターフェース設計どうしようかねぇ
0847名無しさん@お腹いっぱい。
2012/06/22(金) 08:53:40.59prifixが付いたり付かなかったりするようです。
とあるアクセスを「/robots.txt」に置換する場合
local path result: /robots.txt
prefixed with document_root to /www/htdocs2/robots.txt
go-ahead with /www/htdocs2/robots.txt [OK]
と出るのですが下位ディレクトリの「/lib/robots.txt」に置換しようとすると
local path result: /lib/robots.txt
go-ahead with /lib/robots.txt [OK]
とprifixが付かずにLinuxRootからのパスが存在しないディレクトリとなります。
必ずprifixが付くようにするにはhttpd.confに何を設定すれば良いでしょうか?
0848名無しさん@お腹いっぱい。
2012/06/22(金) 09:02:39.91CentOS 6.2
apache 2.2.22
apacheはソースからインストールしています。
0849名無しさん@お腹いっぱい。
2012/06/22(金) 14:36:48.520850名無しさん@お腹いっぱい。
2012/06/23(土) 00:04:36.44付けないらしいのですが、httpd.confでやってる場合は先頭に/を
付けるらしいです。/を付けないとエラーとなりました。
0851名無しさん@お腹いっぱい。
2012/06/25(月) 22:34:55.83GET /xxxxx/undefined HTTP/1.1
PHP,Javascriptなどのソースプログラムは何も変更していません。
原因などお分かりの方、教えて下さい。
0852名無しさん@お腹いっぱい。
2012/06/25(月) 23:00:42.060853名無しさん@お腹いっぱい。
2012/06/26(火) 09:25:15.43今まで気づかなかったバグがはっかくしただけ、よくある話。
0854名無しさん@お腹いっぱい。
2012/06/27(水) 18:48:36.80スパム対策に検討しています。
0855名無しさん@お腹いっぱい。
2012/06/27(水) 19:18:31.59RFC読んでこい。
0856名無しさん@お腹いっぱい。
2012/06/27(水) 19:21:38.29それ何かメリットあるの?
0857名無しさん@お腹いっぱい。
2012/06/27(水) 22:35:01.82mod_rewriteでsleep(3600)なプログラムに飛ばすとか?
ただ、スパムが嫌なら404とか403とか返せばいいじゃん
0858名無しさん@お腹いっぱい。
2012/06/27(水) 23:45:21.680859名無しさん@お腹いっぱい。
2012/06/28(木) 00:00:33.420860名無しさん@お腹いっぱい。
2012/06/28(木) 01:32:07.560861854
2012/06/28(木) 12:03:51.21パケットフィルタでやるべきっぽいですね。
ありがとうございます。
0862名無しさん@お腹いっぱい。
2012/06/28(木) 12:37:20.77「頭の悪いスパム」がそんな頭のいいことするか?
0863名無しさん@お腹いっぱい。
2012/06/28(木) 12:59:09.500864854
2012/06/28(木) 14:09:47.83そうすればスパム側からアタック数を鈍らせることができるのではと思いました。
SSHでの接続も同様に反応させない方が効果的な場合があるので。
0865名無しさん@お腹いっぱい。
2012/06/28(木) 14:30:09.68でも、誤爆することもあって評判悪い手法だよ
0866854
2012/06/28(木) 14:33:27.37似てますね。
検索エンジンにも載せたくないクローズドなサービスでPCからはアクセスできないようにしています。
そのため、PCからの解析目的やアタックを禁止したかったのです。
たしかに誤爆は怖いですね。
0867名無しさん@お腹いっぱい。
2012/06/28(木) 14:52:47.31パスワードかけるなりアクセス元限定するなりしないと。
0868名無しさん@お腹いっぱい。
2012/06/28(木) 16:32:31.700869854
2012/06/28(木) 17:45:49.890870名無しさん@お腹いっぱい。
2012/06/28(木) 17:47:25.800871854
2012/06/28(木) 17:51:21.27この話題はここでクローズさせていただきます。
403のままでいこうかなと思います。
0872名無しさん@お腹いっぱい。
2012/06/28(木) 18:06:09.34推測されるとマズいのか?
0873名無しさん@お腹いっぱい。
2012/06/28(木) 22:33:22.33> PCからの解析目的やアタックを禁止したかったのです。
アクセス出来ないようにしているのに禁止したいってどゆことやろ・・・
0874名無しさん@お腹いっぱい。
2012/06/28(木) 22:34:03.050875名無しさん@お腹いっぱい。
2012/06/28(木) 22:42:28.270876名無しさん@お腹いっぱい。
2012/06/28(木) 23:40:29.140877名無しさん@お腹いっぱい。
2012/07/02(月) 18:50:02.42ここの人間はそれも否定するのか?
0878名無しさん@お腹いっぱい。
2012/07/02(月) 18:58:07.250879名無しさん@お腹いっぱい。
2012/07/02(月) 20:56:23.65メールは詰まっても相手が待ってくれるし、同一IPからの接続数制御が拡張じゃなく実装されてるし
一秒に数百の転送とかあまり機会無いし
まぁ、mod_cbandあたりを検討してみたまえと。
0880名無しさん@お腹いっぱい。
2012/07/02(月) 20:58:12.71というかTarpittingでも負荷が馬鹿にならないからpostscreenが作られたんじゃなかったっけ…
0881名無しさん@お腹いっぱい。
2012/07/02(月) 21:02:36.50HTTPの攻撃は詰まってもゆっくり攻撃続けるだけ。
0882名無しさん@お腹いっぱい。
2012/07/02(月) 22:51:51.500883名無しさん@お腹いっぱい。
2012/07/08(日) 10:50:27.02mod_wsgi:デーモンプロセスモード(プロセスを複数起動)
として連携しているときのリクエストとデーモンプロセスの紐付けについて質問です。
リクエストのクッキー(セッション番号)を識別して、mod_wsgiの
デーモンプロセスにリクエストを振り分けることはできないでしょうか?
※リクエストに紐付けたいのはmod_wsgiのデーモンプロセスであって
apacheの子プロセスではありません
製品アプリになのですが、
http://www.4d.com/4d_docv13/4D/13/Web-Sessions-Management.300-862107.ja.html
ここに書かれているようなことをapache+mod_wsgiでやりたいということです。
【内容抜粋(ここから)】
4D Webサーバーはユーザーセッションを容易に管理するメカニズムを提供します。
この自動メカニズムを使用して、後のリクエストでWebクライアントが同じコンテキスト
(セレクションや変数の値) を再利用できます。
このメカニズムでは4Dが自動で設定するプライベートな"4DSID"という名前のcookieを使用します
(cookie名は変更できます)。Webクライアントからリクエストを受信するたびに4Dは4DSID cookie
が 送信されてきたか、またその値をチェックします
cookieの値がリクエストヘッダーに含まれていれば、4Dは存在するWebプロセスの中から
対応するプロセスを検索します。
プロセスが見つかれば、そのプロセスがWebリクエストの処理に使用されます。Compiler_Web
メソッドは実行されません。
プロセスが見つからない場合、4Dは新しいプロセスを作成します。
cookieがリクエストヘッダーに含まれていなければ、4Dは新しいコンテキストを作成します。
【内容抜粋(ここまで)】
何卒よろしくお願いします
0884名無しさん@お腹いっぱい。
2012/07/08(日) 20:30:29.97Googleに聞けよ
0885名無しさん@お腹いっぱい。
2012/07/16(月) 03:05:28.79自分のサーバでテストしたところ数分でログが100MBに達しました
皆さんは何か対策してますか?
0886名無しさん@お腹いっぱい。
2012/07/16(月) 03:23:25.20リクエスト長制限しておけばいいんじゃね
そもそもdisk fullより先にサービス停止ちゃいそうだけど
0887名無しさん@お腹いっぱい。
2012/07/16(月) 08:37:01.760888名無しさん@お腹いっぱい。
2012/07/17(火) 07:31:48.79rotatelogs でサイズ単位でローテート、とか?
0889名無しさん@お腹いっぱい。
2012/07/17(火) 23:05:39.180890名無しさん@お腹いっぱい。
2012/07/18(水) 16:39:52.63ErrorLog "|bin/rotatelogs /var/logs/errorlog.%Y-%m-%d-%H_%M_%S 5M"
http://httpd.apache.org/docs/2.2/programs/rotatelogs.html
0891名無しさん@お腹いっぱい。
2012/07/18(水) 16:52:02.40おわかりいただけただろうか?
089277
2012/07/18(水) 21:33:36.54いろいろ調べてみると、VMWareがポート443を使っているため
競合して起動できないようです。
VMWareの変更はできないようなので、Apache側を変えたいのですが
どうすればよいでしょうか?(同一環境内で)
0893名無しさん@お腹いっぱい。
2012/07/18(水) 21:49:21.24Listenいじってポートを変える
0894名無しさん@お腹いっぱい。
2012/07/18(水) 21:54:42.050895名無しさん@お腹いっぱい。
2012/07/18(水) 22:00:40.36しかもsslの
kvmのを動かした方が早そうだけど…
0896892
2012/07/19(木) 00:05:19.11Listenってhttpd-ssl.confでポート443が使われてたので444に変えてみました。
これってSSL使うウェブサイト作ると問題出てきますか?
0897名無しさん@お腹いっぱい。
2012/07/19(木) 01:07:58.62外部に公開するWebサイトならポートは変えないほうがいいです
変えるなら>>895さんが言うとおりkvmの方のポートですね
0898名無しさん@お腹いっぱい。
2012/07/19(木) 01:52:13.780899名無しさん@お腹いっぱい。
2012/07/19(木) 03:04:31.46apacheはアドレス指定でバインドすればいい。
両方とも443で待てる。
0900名無しさん@お腹いっぱい。
2012/07/29(日) 18:23:10.89のチルダ抜きでのアクセスで
ln -s /home/username/public_html /var/www/username
で対処するのってまずいですか?
AliasMatch使ったほうがいいですか?
0901名無しさん@お腹いっぱい。
2012/07/29(日) 19:07:41.980902名無しさん@お腹いっぱい。
2012/07/29(日) 21:05:37.99そんな感じのことってありますか?
0903名無しさん@お腹いっぱい。
2012/07/29(日) 21:21:36.050904名無しさん@お腹いっぱい。
2012/07/29(日) 21:26:18.47setuidにさえ気を付ければこのやり方固有の問題は無いってことですね
ありがとうございます
0905名無しさん@お腹いっぱい。
2012/07/30(月) 01:15:17.020906名無しさん@お腹いっぱい。
2012/07/30(月) 02:49:11.92ありがとうございました
0907名無しさん@お腹いっぱい。
2012/08/01(水) 12:42:37.17サーバー上からコマンドラインで取得するには、どうすればいいでしょうか?
apachectlを使ってみたところ、
>apachectl status | grep -i "requests currently being processed"
1 requests currently being processed, 7 idle workers
となって、httpで接続しても1 requestsのまま変わりません。
httpでアクセスすると接続本数が0→1になって、ページを閉じて、
KeepAliveTimeOutに設定した時間を過ぎると、1→0となってほしいのですが。
0908名無しさん@お腹いっぱい。
2012/08/01(水) 14:05:16.840909名無しさん@お腹いっぱい。
2012/08/01(水) 14:38:29.00情報を取得してるってことは理解してる?
その接続のぶんもカウントされるからゼロになることはないよ。
0910907
2012/08/01(水) 16:01:32.35netstatでもできました。
$ netstat -an -p tcp | awk '{ if($4=="192.168.1.1.80" && $6=="ESTABLISHED") print($0)}' | wc -l
>>909
あ、なるほど。解説ありがとうございました。
KeepAliveTimeOutに設定した時間を過ぎると、2→1となることが確認できました。
0911名無しさん@お腹いっぱい。
2012/08/01(水) 22:22:45.30module_rewriteを使って、
rewriteruleで[R=ステータスコード]とする方法を試しました。
3xx系はいけたんですが、4xx/5xx系のステータスコードを設定すると、
なぜかapacheが用意済み?の英語メッセージになります。
こういったやり方は駄目なんですか?
RewriteRule 元URL 遷移先URL [L,R=503]
※同一ステータスで異なる遷移先が必要なので、
ErrorDocumentを使う方法はNGかなと考えてます。
0912名無しさん@お腹いっぱい。
2012/08/02(木) 01:01:20.550913名無しさん@お腹いっぱい。
2012/08/02(木) 02:26:19.120914名無しさん@お腹いっぱい。
2012/08/16(木) 17:27:11.84ProxyPass /hoge/ http://a.b.c.d/hoge/
↑これはうまく動いてます
どうせならベーシック認証も同時に通すかと
ProxyPass /hoge/ http://id:pass@a.b.c.d/hoge/
↑こうすると、リバプロとしては動きますがis:passのベーシック認証が通りません
リバースプロクシーにベーシック認証のid:passを書いて使う方法はないですか?
なんでここにid:passを書きたいかというと、リバプロで複数台ぐらいのWebサーバーを集約すると、
集約元の各サーバーのベーシック認証のid:passをブラウザが覚えてくれないからです
0915名無しさん@お腹いっぱい。
2012/08/16(木) 17:52:37.320916名無しさん@お腹いっぱい。
2012/08/16(木) 18:14:24.15パスワードは全部違うんですけど
0917名無しさん@お腹いっぱい。
2012/08/16(木) 19:53:55.69ブラウザもあるかもね
0918名無しさん@お腹いっぱい。
2012/08/16(木) 20:11:53.62AuthName で指定するのはダイアログに表示するメッセージではなく認証領域なので、
同じホストでも認証領域が違えば同じユーザ/パスワードは使えないという
前提で実装するのが正しい。そうでないならある認証領域に別の認証領域の
ユーザ情報を漏曳するというセキュリティホールになる。
0919名無しさん@お腹いっぱい。
2012/08/16(木) 20:27:28.32どんなAuthNameだよww
0920名無しさん@お腹いっぱい。
2012/08/16(木) 22:19:42.04同じアカウントあると認証通るよ
0921名無しさん@お腹いっぱい。
2012/08/16(木) 22:47:40.340922名無しさん@お腹いっぱい。
2012/08/16(木) 22:56:54.920923名無しさん@お腹いっぱい。
2012/08/16(木) 23:04:10.28それとも自分で勝手に考えてるんだろうか。
0924名無しさん@お腹いっぱい。
2012/08/16(木) 23:04:58.180925名無しさん@お腹いっぱい。
2012/08/17(金) 10:17:32.940926名無しさん@お腹いっぱい。
2012/08/17(金) 12:49:54.820927名無しさん@お腹いっぱい。
2012/08/17(金) 20:24:57.050928名無しさん@お腹いっぱい。
2012/08/29(水) 01:50:26.67たとえば、index.cgiが 404 になる。
mod_perl が無効なディレクトリでは index が動作する。
なんででしょう?
ぐぐると、mod_rewrite との関係の話があったけど、mod_rewriteを無効にしても
結果は変わらんかった。
mod_perlの設定は以下のような。
<IfModule mod_perl.c>
Alias /cgi/ "/home/user/public_html/cgi/"
<Location "/cgi">
SetHandler perl-script
PerlHandler ModPerl::Registry
Options ExecCGI
Allow from all
PerlSendHeader On
</Location>
</IfModule>
0929名無しさん@お腹いっぱい。
2012/08/29(水) 07:20:11.630930名無しさん@お腹いっぱい。
2012/09/01(土) 01:15:29.87http://marc.info/?l=apache-modperl&m=112805393100758&w=2
パッチが出てる
0931名無しさん@お腹いっぱい。
2012/09/05(水) 00:49:55.15KeepAlive中に400以降のステータスコードが出た場合、張っていたセッションは明示的に切られますか?それとも200同様にセッションは継続できますか?
検索したのですがtomcatとかなんかはヒットしたのですが、apacheの動作は見つけられませんでした
0932名無しさん@お腹いっぱい。
2012/09/05(水) 00:55:26.800933名無しさん@お腹いっぱい。
2012/09/05(水) 05:29:56.13異常系なのでソースでも読めば
0934名無しさん@お腹いっぱい。
2012/10/23(火) 03:27:08.20うちにもいるわw こういう略語使う馬鹿
ダブルクリックのことをダブクリとか
は?って聞き返してしまった
0935名無しさん@お腹いっぱい。
2012/10/29(月) 14:13:20.2716進のコードは何を意味してるの?
0936名無しさん@お腹いっぱい。
2012/10/29(月) 14:59:31.45HTTP/1.1のchunked encoding?
0937名無しさん@お腹いっぱい。
2012/11/03(土) 13:10:53.500938名無しさん@お腹いっぱい。
2012/12/27(木) 15:02:41.96apache2 で WebDAV を使いたくて、apache2 のインストール時?に、
一緒にインストールされるサンプル
/usr/share/doc/apache2/examples/apache2/extra/httpd-dav.conf
を参考にしているのですが、このサンプルの中身の記述のせいで戸惑っています。
このサンプルには、次のようなコメントがあります。
# Required modules: mod_dav, mod_dav_fs, mod_setenvif, mod_alias
# mod_auth_digest, mod_authn_file
しかしこれらのモジュール名は、apache の、
たぶんもっと古いバージョンの時代に用いられていたもののはずで、
現在の apache2.2 ではすでに廃止されているものかと思います。
現在の apache2.2 で WebDAV を使うのに必要なモジュールというのは、
正確には何でしょう?以下の4つで良いのでしょうか?
/etc/apache2/mods-available/dav_fs.conf
/etc/apache2/mods-available/dav_fs.load
/etc/apache2/mods-available/dav.load
/etc/apache2/mods-available/dav_lock.load
0939名無しさん@お腹いっぱい。
2012/12/27(木) 15:05:17.94その辺はディストリ依存の話だからLinux板へ。
0940名無しさん@お腹いっぱい。
2012/12/27(木) 15:28:19.620941名無しさん@お腹いっぱい。
2013/01/17(木) 10:08:49.97環境は Ubuntu Server 12.0.4.1 LTS amd64 です。
apache2.2 で rep2 鯖にしようと思ってます。
この書き込み自体がその環境からのもので、つまり既に動いてます。
ただ apache の使用ポートをデフォルトの 80 から任意のもの(例えば81)に変更したくて、
/etc/apache2/ports.conf をそのように書き換え、 # service apache2 restart したんですが、
NameVirtualHost *:81 has no VirtualHosts と言われてサービスを正しく起動出来ません。
apache2 自体が起動しなくなります。
任意のポートで正しく apache2 を起動させるには、何処をいじる必要がありますか?
ディストリビューション固有の問題は自分で調べるとして、
apache2.2で特定ポートを使用する場合にせねばならない一般的なことに関して、
どなたかアドバイスをいただけないでしょうか。
よろしくお願いいたします。
0942名無しさん@お腹いっぱい。
2013/01/17(木) 12:10:06.880943名無しさん@お腹いっぱい。
2013/01/17(木) 12:31:59.25VirtualHostsは使ってる?
使ってないのならListenだけ81にしてVirtualHostは80のままだと起動する 今12.10で確認した
0944名無しさん@お腹いっぱい。
2013/01/17(木) 12:59:10.99しかし htttp://ubuntu.local.ip.address:81/ にアクセスしても「そんなん無い」って言われて、
元の /var/www/index.html を読みに行けませんでした。
おかしいと思って /etc/apache2/sites-available/default を見たら、
そこに VirtualHost の定義があったので、/etc/apache2/ports.conf の設定共々、
VirtualHost *:81 にしてやったら普通に起動し、
かつ、/var/www/index.html も読みに行ってくれました。
というわけで今回のこの投稿は htttp://ubuntu.local.ip.address:81/rep2/ からとなります。
ありがとうございました。
レス数が900を超えています。1000を超えると表示できなくなるよ。