Apache統合スレ 12 (HTTPServer以外も含む)
HTTP ServerだけでなくAntやTomcatなどApache全般に関するスレだ!
■公式
Apache Software Foundation http://www.apache.org/
■HTTP Serverの最新Version
Apache/2.4.4
Apache/2.2.24
Apache/2.0.64
■前スレ
Apache統合スレ 11 (HTTPServer以外も含む)
http://engawa.2ch.net/test/read.cgi/mysv/1286137109/ apacheのユーザとかって専用でたててる?
あとwheelグループとかつけたらセキュリティ上まずいかな? phpinofoで
Configuration File (php.ini) Path が
C:\Windows なのに
Loaded Configuration File が
C:\pleiades\xampp\php\php.ini
になってるんですが、
これはどんな裏ワザを使ってるんですか? すいません>>26補足です・・・
httpd.conf に PHPIniDir の記述はありませんし、
Windows環境変数Pathの中にも、それらしい記述はなかったです。 >>23
/usrにあるバイナリ処理速度のことじゃね? ************************************
マジ無料
「 アダルト動画 Edis-Live.com 」で検索
↑おすすめ
************************************ apacheを外部からもアクセスできるようにしたいのですが、ルータのポートを開くだけでいいのでしょうか? 調べてもイマイチわからなかったのでお願いします。 端的に言えばそれで合ってるけど
お外へ向けるのはもう少し知識付いてからにしような ルータとweb鯖の間に何か鉄壁防御なアイテムを
何か少なくとも1つ、もしくは2つほど必要なんじゃないかね、と
もちろん、仮想化で実際には1台のPCに兼務させてもいいけど 外部公開できたのですが、http://グローバルIP:ポート番号 でだれでもアクセスできてしまう状況です特定のパソコンだけから、またはパスワードをつけるといったことをやりたいのですが、方法はどんなものでしょうか? また参考サイトがありましたら教えてもらいたいです。 順序が逆
外部公開する前にやりたいことをローカルで実現できるようになれ
乗っ取られたり踏み台にされて被害を被るのはおまえだけじゃないんだから /:: ̄:::\
0⌒>::::::::::_:ヽ
⊂ニニニ´ニ`⊃ メリー
卯イノ从リリ} クリスマス!
. /⌒八(!゚ -゚ノ!ヾ
( /ニll)'':::::''ミリ))
┌─────‐‐─┐
└┬─┬─┬─┬┘
├┬┴┬┴┬┤
├┴┬┴┬┴┤ww
⌒⌒ ̄ ̄ ̄⌒⌒ ̄ ⌒
サッ!!
ill|lliil|li
┌─────‐‐─┐
└┬─┬─┬─┬┘
├┬┴┬┴┬┤
├┴┬┴┬┴┤ww
⌒⌒ ̄ ̄ ̄⌒⌒ ̄ ⌒
\ ドボォ〜〜ン /
┌─────‐‐─┐
└┬─┬─┬─┬┘
├┬┴┬┴┬┤
├┴┬┴┬┴┤ww
⌒⌒ ̄ ̄ ̄⌒⌒ ̄ ⌒ Mac OS X MountainLionからMavericksにしたらxamppがアクセス制限されるようになりました
どこの設定が変わったのか教えてください‥ initファイルなどを参照して
permissionが変わってるところを腰据えて探していきましょう
ディレクトリ/フォルダの所有権なども含めて >>43-44
レス有難うございました
wordpressのテストでxamppを使っているのですがマカー板で聞いてみます Apache2.2を使っています
ログファイルを日ごとにローテーションしようと思い、httpd.confに次の記述を行っているのですが、ErrorLogのほうだけ動作してくれません。
何が原因かわかりますでしょうか
ErrorLog "|/usr/local/sbin/rotatelogs /var/log/httpd-error.log.%Y%m%d 86400 540"
CustomLog "|/usr/local/sbin/rotatelogs /var/log/httpd-access.log.%Y%m%d 86400 540" combined 補足です。
Apacheを再起動した直後はhttpd-error.log.20140108が作成されるのですが、日付が変わっても新しいファイルが作成されない状況です >>46
次の日のログがまだ出力されていないって落ちはないよね。 >>46です
原因がわかりました
Apacheのログローテーション以外にもrotatelogsを使っているプロセスがあり、
24時前あたりに、そのプロセスをkillしようとしてErrorLogのプロセスがkillされているようです
psの結果からrotatelogsのプロセスIDを取りだしてkillするシェルが見つかりました >>50
どのプロセスが、どういう目的でkillしてるか知りたいな。
なんで、CustomLogには影響なかったなろう。psの並び順の都合? Apache 2.4.7 と mod_encoding を組み合わせて WebDAV サーバとして稼働させると、
日本語を使った WebDAV フォルダ/ファイル名が特定の規則性にしたがって一部
%エンコードされずに生(たとえばUTF-8)のままクライアントに返され、その結果
Windows XPのネットワークプレイスなど旧式の WebDAV クライアントにおいて
フォルダ/ファイル名が文字化けする件
(※2.4.6 では発症しない)
発症環境がニッチすぎて誰も困ってないのかもしらんけど >>51
自社開発の常駐系プロセスです
/path/to/xxxxx | /usr/local/sbin/rotatelogs /path/to/log/xxxxx 3600 &
と起動させ、終了時は
ps acx > /tmp/ps.out 2>&1 &
sleep 3
cat /tmp/ps.out | awk '/xxxxx/{print $1}' |xargs kill
cat /tmp/ps.out | awk '/rotatelogs/{print $1}' |xargs kill
としています
よく考えると、これだとCustomLogもkillされてないとおかしいですね… >>53
rotatelogsを全部殺しているんだ。
そういえば、パイプ経由のプロセスは自動的に上げ直してくれるんだった。エラーログも同じだと思うんだけどな。
http://httpd.apache.org/docs/2.0/ja/logs.html#piped RewriteRuleについて教えてください
以下のように.htaccessを設定しました
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ index.html [L]
RewriteRule ^2$ index2.html [L]
RewriteRule (.*) jj.html
RewriteRule ^j$ ap/ [L]
</IfModule>
このように設定し、.htaccess をおいたディレクトリにアクセスすると
index.htmlではなく jj.html が返ってきました。
RewriteRuleに記述順序は関係ないのですか? 55です。ログをみて自己解決しました。
リダイレクトしていたんですね mod_fcgi
mod_fastcgi
mod_proxy_fcgi
どれ使ってる? mod_chrootとか、mod_securityのような
セキュリティ対策用のモジュールは
やはり導入するのがデフォなんでしょうか? apacheのlogのCONECTってLOGが出てたんですが、具体的に何をしてるの?getとかpost?の親戚? CONNECTでしたね、お恥ずかしいです。
>>61
レスありがとうございました。参考にさせてもらいます。 nfsのアクセスについて質問させてください。
linux mint apache2.2.22 を使用しています。
/mnt/ 以下にnfsをマウントし、guiからは/mnt/以下のフォルダにアクセス(読み書き)できるのですが、
apacheからはアクセスが行えません。
正確にはphpファイルでis_dir(/mnt/〜)としても0が帰ってきます。
is_dir(/mnt)では1が帰ってきて正常にアクセスできているみたいです。
apacheのグループや権限等を理解できておらず、そこがネックになっているのかもしれませんが、自分なりに調べたのですが
どのように調べればいいのか途方にくれております。
アドバイス頂けないでしょうか。
何卒よろしくお願い申し上げます。 それはPHPの質問だと思います。
途方に暮れる前に PHP の is_dir() の仕様を勉強するべきです。 >>66
助言ありがとうございます。
早速 is_dir() の仕様を勉強してきます。 どこをどう間違ったか、自鯖にアクセスすると、
「ページが開けません。多くのリダイレクトが発生しています。」
と言われてしまいます。
原因がよく分からなくなってしまったので、
/etc/httpd/conf/httpd.conf
をデフォルトのものに戻し、
/etc/httpd/conf.d/*.conf
を基本的に全部削除して、
# apachectl restart
してみたのですが、やはり
「ページが開けません。多くのリダイレクトが発生しています。」
と言われます。どういった原因が考えられるでしょうか?
環境は、下記のような具合です。
# less /etc/redhat-release
CentOS release 5.10 (Final)
# w3m -dump_head http://localhost
HTTP/1.1 200 OK
Date: Thu, 13 Mar 2014 06:03:13 GMT
Server: Apache/2.2.3 (CentOS)
Last-Modified: Sun, 28 Mar 2010 13:22:29 GMT
ETag: "1b7393-480-482dc49c66f40"
Accept-Ranges: bytes
Content-Length: 1152
Connection: close
Content-Type: text/html; charset=UTF-8 >>71 リプライありがとうございます。
こういう時ってどこから潰して行けばいいんでしょうかねぇ。。 ログ見ようよ
エラーメッセージでグーグル先生は何かヒントを出しているようですが
ブラウザのキャッシュ&お菓子の破棄とかで何とかなるような場合もあるようだが
どういう構成で何がどうエラー吐いてるのかな
問題のでない構成はないのかな? わかりにくい
上述:問題のでない構成
訂正:問題のでないクライアント機器の構成とか
他にもローカルアクセスなのか、携帯から外部アクセスしてみるとかで。
内向け限定? 質問させてください。
apache2+phpが上手く動作しません。
linux mint 13 にapache2を入れ、試しにきちんとit works!が表示されることと、ドキュメントルート直下に
単純なindex.php (中身はphpinfo();)だけのものを配置して表示がされることは確認できたのですが、複数のphpプログラムで
できているスプリクトを動作させようとするとサーバー内エラー500で動作してくれません。
ネットで調べてドキュメントルート以下をchmod -R 755 にすれば動くとみてやってみたのですが、同じくサーバー内エラー500になってしまいます。
どうかアドバイスを頂けないでしょうか、よろしくお願い致します。 500の時は(そうでない時もだけど)、apacheのerror_logに詳細が出てるはずだから
それ調べてごらん。
エラーの意味がわからないときはその内容をここに書いてごらん。 あとわけもわからず chmod -R しない方がいいぜ。
単にincludeして phpinfo するだけのやつとかも試して御覧。 >>77
アドバイスありがとう御座います。
apacheのerror_logには 「Permission deneid : access to /index.php deneid」
と記録されています。
ふとSELinux関連かなと思ったのですが、ubuntu 12.04ベースのLinux mint 13 にはSELinuxは入っていないようです。
またおっしゃって頂いた事とかぶるかもしれませんが、このような書き方をすればphpinfoまでは動作し表示されます。
require_onceの後にphpinfo();をつけてみると500エラーとなってしまいます。
index.php 中身一部省略
<?PHP
phpinfo();
break;
#=================================================
# ライブラリ読込
#=================================================
//-- 必要最低限を読込 他のライブラリは必要に応じてモジュール先で読込
require_once('../include/define.inc');
?> >>76
自己レスすみません。
ちょっと間違ったログの確認方法をしてしまっていたかもしれません。
>>79 は誤りの可能性があるのでスルーしてください。
すみません。 どのユーザとして実行してるのかな
ファイル/フォルダのPermission・アクセス権が整合してない希ガス >>76 で /index.php は成功してる、ように見えるんだけど
>access to /index.php deneid
これと合わないなあ。
よくあるパターンとしては、ディレクトリの --x が無い場合だけど
755 にしたなら--x付いてるはずだし、、、そこからさかのぼって
一番上まで付いてないとならないから注意ね。
でもまあ、phpinfo()が成功してるならこれは関係ないなあ。 >>83
すみません、お返事がおくれました。
あのあと、もう一度OS再インストールからセットアップしなおした結果、正常に動作しました。
折角アドバイス頂いたエラーログから原因を探るという本質的な解決方法ではないところが悔やまれますが
はじめにセットアップした時に体調を崩しておりきちっと手順を確認できていなかったのかもしれません。
アドバイス頂、お世話になりました。
また何か問題が起こりましたらエラーログから原因を探らせて頂きたいと思います。
ありがとうございました。失礼致します。 ●●●ケネディ大統領は何故、死なねばならなかったのか?●●●
http://jbbs.livedoor.jp/bbs/read.cgi/study/3729/1226114724/53
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
この掲示板に優秀な書き込みをして、総額100万円の賞金をゲットしよう!(*^^)v DDOS攻撃されたのでiptablesでIPはじくようにしたのですが、もっと簡単に設定を行いたいです。
Apacheの.htaccessでdeny設定で簡単に設定を書き換えるようにしたいのですが、
deny設定で弾くとApacheのアクセスログに403のアクセスが出力されてしまいます。
大量アクセスのため、わざわざログに出したくないのですが、403エラーをログに出さない設定はどうやれば良いでしょうか?
アクセスしたファイル名に.jpgなどが含まれていた場合はログに出さない設定は見つけたのですが
ステータスコードでログ出力を抑制する方法を知ってたら教えてください。 ↑ 「Apacheの .Accessで」です。抜けてました。 ほんとうにDDoSだったのであれば、ルータのaclとかiptablesとか、
できるだけ手前で止めるのが正しい。
.htaccessとかのんきなことを言ってられるのはほんとのDDoSを知らない。 Apacheをインストールしてドキュメントルートがrootでしか読み書きできないようなところが指定されていた場合
一般ユーザーからユーザーディレクトリの中にディレクトリを作ってそこをドキュメントルートにするのは危険ですか?
それとも権限はrootに固定しておくべきでしょうか? こういうリンクが実存するんだけどどういう風にやってるのかなぁ
パスの途中に//と、null?なディレクトリが存在する風でよくわからんのです
ttp://blog.tsukumo.co.jp/mt-static/FileUpload/pics//Akiba2014/0401//tsukumotan_4.jpg
movabletype使ってるかもしれないことはわかるが スラッシュかぶっても無視されるだけ
ファイルシステムでもそうでしょ?
Windowsだったらわからんけど あーほんとだ
無視されるのか。
でも、なんでそんな判りにくくするようなことを敢えてやるのかなぁ >>86
iptablesでDDos判定してswatchなんかでIP抜き出して、
denyhostに書き出す。
そのリスト使ってiptablesで弾くのが一番楽で効果的で負荷少ない。
やりかたはまあググればあるよw DDoS の1個目の D は「分散」という意味でだな・・・ >>96
そりゃあ変数置換するときに
${hoge}${fuga}のhogeとfugaどちらにもスラッシュをつけたほうが安全だからな ところが昔の Apache の Location ディレクティブでは // を / とみなす処理が無くてだな・・・
<Location />
allow from 192.168.0.0/24
deny from all
</Location>
なんて設定しても
GET //hogehoge
とすると deny をすり抜けられてたんだな
今でも //phpMyAdmin/setup.php とか //cgi-bin/php5.cgi とかの穴を突きに来るbotが居るのは
そのせい >>98
意味でだなって、んなこと知っとるわw
フィルターで弾くIPを細かく制御できるよ //の件でこたえてくれた方々ありがとう
何だか判らない挙動がひとつなくなってちょっと幸せ。
便利だがセキュリティホールにもなってたのかー http://example.jp/index.cgi/foo/bar
のようにアクセスするCGIがあるのですが、このURLから"index.cgi"を抜いて
http://example.jp/foo/bar
とアクセスを行えるようには出来ないでしょうか? windows7にhttpdをインストールしたんですが、
localhostにつながったりつながらなかったり、
つながってもすごく時間がかかったりの状況です。
hostsファイルを編集して120.0.0.1とlocalhostの関連づけをしました。
Administratorでログインするとサクサク動いてる気がする(たまたまうまくいってるだけかもしれない)ことから
権限関連のなんらかの設定が必要のように感じてるのですが、どうでしょうか すいません、127.0.0.1の間違いです。
hostsファイルのアクセス許可設定で、Usersにフルコントロールの許可をしましたがダメでした。
他にユーザは「System」「Administrator」があり、
それぞれフルコントロールが許可されています ブラウザからlocalhostではなく127.0.0.1でアクセスしてもダメなので
hostsファイルは関係ないでしょうか?
pingした場合は正常に返ってきています いろいろ試してみて、httpd.confでディレクトリの権限を変更したら
即座に403が返ったことから、localhostそのものは正しい状態になってるように感じます。
挙動でしか説明できないのが歯がゆいですが、ブラウザで次のようにするとレスポンスが返ってくることに気づきました。
タブ1でページAにアクセス(更新)=>待機中になってしまう
タブ2でページBにアクセス(更新)=>ページAとページBの読み込みが同時に完了する
またXMLHttpRequestを実行するページでも、
ボタンAクリックで待機状態=>別のボタンBクリックでAとBの結果が同時に出る、
といったことも起こります。
なにか推測できませんでしょうか。よろしくお願いします error_logは何も出てないの?access_logは? エラーログには何も記録されません。
アクセスログは見てなかったのですが、ブラウザに表示されたアクセスと
待機のまま消してしまったアクセスを区別できないので、なんとも・・・
レスポンスコードは(おそらく)すべて200か304でした。
今アクセスログを見たところ、インストール直後はipV6でアクセスされており
その後ipV4に切り替わっています。
もしかすると、>>106のとおりhostsを編集したのがよくなかったのかもしれません。
最初にhostsを見たときは、V4・V6ともコメントアウトされており
V4の方のコメントをはずした次第です。
インストール直後に試したとき(おそらくhosts編集前)は快適だった気もするので
確認してみます。 スレ私物化ですいません、hostsファイルを編集してみるとやはりうまく動作せず、
もとに戻しました(127.0.0.1 localhost のみ有効)
状況変わらずですが、>>110の「2度アクセスするとうまくいく」挙動に関して
以下のように確認したところ、ブラウザでは待機中になってるが
レスポンスが返ってこないだけでアクセスは記録されてることがわかりました。
..tp://localhost/index.html にアクセス=>待機状態
アドレスバーに同じURLを入力してEnterキー(再度アクセスする)=>表示される
アクセスログには2件のアクセスが残っている(いずれも200)
これだとブラウザがダメな気がするけど、現在のところブラウザにかかわらず同じ挙動です。 表示してるものは何なの?
単なる html ファイル? あと httpd.conf でLISTENアドレスを*にしてるなら
そのPCのIPアドレス入れて見たらどうなる?localhostじゃないほうのアドレスね ありがとうございます。現時点で表示しているのはHTMLとPHPです。
ListenにPCのアドレスを入れてみると、httpdは起動しますが
「このページは表示できません」(IE)となり、
ネットワーク診断では「リモートデバイスまたはリソースが接続を受け付けません」となりました。 いや、、Listen 80 だったらそのままでいいよ
ブラウザのURL欄にIPアドレスだよ
とにかく一番単純な形でいくつか試して原因を切り分けしないと 意味とりちがえで失礼しました。
httpd.conf が Listen 80
URLにPCのアドレスでアクセスできてます。
先ほどまでよりサクサクページが読み込まれている感じがしますが
これまでも一時的にはこういう状態があったので・・・。
ただ先ほどまでは、一見快適にページを移動していても、
数10秒ページを表示してから(時間を置いて)次ページにいこうとすると
またダメになるという現象があったのですが
これがなくなり、本来の挙動に近い感じです。
httpd.conf は 現在の Listen 80 のほか
Listen 127.0.0.1:80 も試していました。 SSL用サーバ証明書の再発行って無料なんだな
このまえのOpenSSL騒ぎではじめて再発行申し込んだ >>118
とりあえず、以下の設定を試してみて。
HostnameLookups Off
KeepAlive Off
後は、設定ファイルさらす(コメントは抜いてね)。 EnableMMAP Off とか
EnableSendfile Off とかあったなw Windowsはw スミマセン、投稿の制限などで書き込みにくい状態です。
>>120の設定を試してみましたが状況は変わりませんでした。
こちらでは、Apacheではなくパソのネットワーク関連の問題な気がして
いろいろ試していましたがダメです。
具体的にはipV6が有効・優先になってる関係なのではないかと考えたのですが
ipV6を停止したりipV4を優先にするなどしても変わりませんでした。
以下にhttpd.confを貼ります
LoadModuleはデフォルトのままなので省略、読み込んでない<IfModule>も省略
PHPはあってもなくても同じ状況なので省略しました ServerRoot "c:/Apache24"
Listen 80
ServerAdmin XXX@XXX.XX.XX
ServerName localhost:80
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "c:/www/public_html"
<Directory "c:/www/public_html">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<IfModule dir_module>DirectoryIndex index.html</IfModule>
<Files ".ht*">Require all denied</Files>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddHandler cgi-script .cgi
</IfModule>