タグ

apacheに関するrryuのブックマーク (21)

  • NginxとApacheって何が違うの?? - Qiita

    はじめに Webサーバーを使うときに、NginxとApacheって言葉よく耳にしますよね。 ただその違いっていまいち良くわからなくないですか??(僕だけだったらすみません笑) ちなみに僕は「Nginxの方がなんか人気だし良さそうな気がする。。。」という何の根拠もないイメージしか持っていませんでした。 さすがにもう少しちゃんと理解したいと思い、今回はこの違いを記事にしてみました。 ぜひぜひ最後まで読んでみてください〜! ※ちなみにNginxとApacheはそれぞれ、「エンジンエックス」「アパッチ」と読みます。 そもそもNginxとApacheとは? NginxとApacheはWebサーバーのソフトです。 サーバーにこれらのソフトをインストールすると、Webサーバーとしての機能をもちます。 Webサーバーソフトにおいて、2021年12月時点でNginxとApacheが圧倒的シェアを誇っています

    NginxとApacheって何が違うの?? - Qiita
    rryu
    rryu 2022/05/31
    Nginxはアプリケーションサーバのフロントに置いて使うものなので単体では使用しないが、Apacheは単体のウェブサーバとして使うことが多いというのが大きな違いだと思う。
  • SIOS Tech. Lab - エンジニアのためになる技術トピックス

    ども!今回はGitHub ActionsでFTP経由デプロイができたので、備忘録的な共有をしておこうと思います。レンタルサーバーを無駄に腐らせている人がいれば、ちょっと試してみてはどうでしょうか?レンタルサーバーの良いと […]

    SIOS Tech. Lab - エンジニアのためになる技術トピックス
    rryu
    rryu 2017/09/20
    Limitディレクティブでメソッドを制限するとAllowレスポンスヘッダフィールドが返す値が壊れてメモリの内容が漏洩するという皮肉…
  • ApacheのAddHandlerはセキュリティ上の懸念から使用すべきではない - このブログはURLが変更になりました

    元ネタはこちら。 Apache AddHandler madness all over the place Gentoo Bug 538822 どういうことか 次のような指定は危険である。 AddHandler php5-script .php この時に指定される.phpはファイル名の末尾である必要はない。例えば、 aaa.php.html bbb.php.pngなどもphp5-scriptとして解釈されてしまうのだ。これは.XXX.YYYと複数の拡張子が書かれた場合、.XXXと.YYYもAddHandlerの対象となることが原因。 ちなみに次のような場合にはphp5-scriptとして解釈されない。 ccc.php_foo (.php_fooとして解釈されるため) ddd.php_bar.html (.php_barと.htmlとして解釈されるため)実はこのことはApacheのドキュメン

    ApacheのAddHandlerはセキュリティ上の懸念から使用すべきではない - このブログはURLが変更になりました
    rryu
    rryu 2015/02/26
    アップロードされたファイルを置くディレクトリで Options -ExecCGI すればいいだけだと思うのだが……
  • Apache2.4で "client denied by server configuration" が出たら | SonicNotes

    2.4 で Order ディレクティブが Require ディレクティブに変更された。 これを指定していないとこのエラーが出てアクセスしても 403 が返される。 <Directory /the/path/to/docroot> Order allow,deny Allow from all </Directory> これが2.2までの古い書き方。2.4では、次のようにしなければならない。 <Directory /the/path/to/docroot> Require all granted </Directory> mod_authz_core - Apache HTTP Server 例えばある特定のIP等からのアクセスを制限したい場合は こんな感じになるようだ。 <RequireAll> Require all granted Require not ip 1.1.1.1 </Re

    Apache2.4で "client denied by server configuration" が出たら | SonicNotes
    rryu
    rryu 2014/11/20
    明示的なアクセス許可を書かないとこのエラーになるが、Orderディレクティブなどはmod_access_compatに切り離されたのでロードしていないと指定していてもエラーになると。
  • Internal dummy connection error in apache access log

    rryu
    rryu 2014/09/25
    Apacheが死んだ子プロセスを復活させるときにループバックアドレスから「(internal dummy connection)」という謎のUAでアクセスする話。
  • [メモ] Apache+mod_sslでSIGBUSが発生した件

    @hirose31さんと、Apache HTTPDからHTTPSでファイルダウンロード中にサーバプロセスがSIGBUSで死ぬって件にぶちあたり、 「OpenSSLの中でmemcpyがSIGBUSしてます」「な、なんだってー!」 って調べたのですが、理由は以下のとおりだった。 HTTPSの場合、デフォルト設定だとファイル読込にmmap(2)が使われる mmapされたファイルのサイズが変更されてもApacheはそれを検知しようがない そして、ファイル末尾以降のデータを読もうとするとセグメンテーションエラー(SIGBUS)が発生し、Apacheのサーバプロセスは異常終了する HTTPの場合は、ローカルファイルシステムの場合sendfile(2)が使われるので、ファイルサイズが変更になってもApacheは異常終了しない ただし、mod_deflateのような出力フィルタを使っている場合は、HTTP

    rryu
    rryu 2014/05/20
    Apacheがデータを加工しない場合はsendfileで済むけど、httpsの場合は暗号化するために常にmmapするのでより発生しやすいのか。
  • Apache 2.4系でのモダンなアクセス制御の書き方

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 これまでのApache2.2系以前でのアクセス制御の書き方は賛否両論でした。僕はあまり好きじゃありませんでした。 過去のアクセス制御に関しては、以下の記事がとてもわかりやすくまとめられていると思います。 こせきの技術日記 – Apacheのアクセス制御をちゃんと理解する。 ここで、以下のように言及されています。 こんなバッドノウハウ、当はどうでもいいと思う。Apache 3.0では、かっこいいDSL(VCL)で書けるようにする構想があるらしいのでがんばってほしい。 ということで、2.4系ではDSLとはいかないまでも、Require*というディレクティブを使ったモダンな書き方ができるようになったので、それを2.2系以前のアクセス制御の記述と比

    Apache 2.4系でのモダンなアクセス制御の書き方
    rryu
    rryu 2013/05/19
    Require exprが便利過ぎる。
  • Apache CVE-2012-0883 - どさにっき 2012年4月18日(水)

    2012年4月14日(土) ■ BIND + SoftHSM _ 雨ってイヤね。 _ SoftHSM をインストール。手順略。 _ openssl の pkcs#11 engineをインストール。freebsd なので ports/security/engine_pkcs11 を入れるだけ。テスト。 % openssl engine dynamic -pre SO_PATH:/usr/local/lib/engines/engine_pkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/local/lib/libsofthsm.so -t (dynamic) Dynamic engine loading support [Success]: SO_PATH:/usr/local/lib/engine

    rryu
    rryu 2012/04/21
    PATHもLD_LIBARARY_PATHも空の要素はカレントディレクトリと見なされるので適当に:で連結して作ると脆弱になってしまうという話。
  • apache Auth Cookie Fu module - 最速配信研究会(@yamaz)

    日夜アクセスと闘うWeb管理者のみなさんこんにちは. ログインしてる人にしか見せたくないコンテンツがあって,phpperlrubyとかで アクセス制御してたりしてなかったりするんだけど,それくらいapache側で対処 してくれよと日々悶え苦しむそんなアナタにapache Auth Cookie Fu module. これはなに? Cookieを使ってコンテンツのアクセスコントロールを行うモジュールです. Cookieの評価後,コンテンツの拒否は指定された方法(redirect, forbidden)で 処理されます.なおCookieの焼き込みは自前で用意する必要があります. module.jp小山さんのmod_auth_formとかなり似てますが, apache2対応 コンテンツ拒否の方法を指定できる などがウリです. ダウンロード http://scaleout.jp/open/mo

    apache Auth Cookie Fu module - 最速配信研究会(@yamaz)
    rryu
    rryu 2012/03/28
    クッキーにセットされた所定の書式の値と署名のSHA1ハッシュを照合して認証するApacheモジュール。
  • AuthMemCookie Apache Module

    AuthMemCookie Apache Module "Auth MemCookie" is an Apache v2 Authentication and authorization modules based on "cookie" Authentication mechanism View on GitHub Download .zip Download .tar.gz What is “Auth MemCookie”? Auth MemCookie is an Apache v2 Authentication and authorization modules are based on cookie Authentication mechanism. The module doesn’t make Authentication by it self, but verify if

    rryu
    rryu 2012/03/28
    memcachedをトークンのストアにして、クッキーにセットされたトークンを照合して認証するApacheモジュール。クッキーのセットはアプリから行う。
  • Apache 2.4 で mod_lua を使ってみる

    Apache httpd 2.4.1 のコンパイル Apache httpdの安定版のメジャーバージョンが上がって、Apache httpd 2.4.1 が 2012/02/21 に公開されました。2.2シリーズからの拡張の詳細は https://httpd.apache.org/docs/2.4/new_features_2_4.htmlにあります。その中で mod_lua が気になりました。組み込み用のスクリプト言語の「Lua」の名前だけは知っていましたが、文法や言語の特徴は全く知りませんでした。「The Programming Language Lua https://www.lua.org/」を見てみると小さく速い言語の様です。小さな言語好きの私は、さっそくコンパイルして試してみることにしました。 今回実験した環境は、64bit 版の Ubuntu 11.10 をインストールした非

    rryu
    rryu 2012/03/28
    Ubuntsへのインストール方法と2.4.1でもまだexperimentalだった件。
  • Apache 2.4.1のmod_luaでApacheに介入する(mod_rewriteの終焉?)

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 といいつつも、そこまで大したことはしていない。 luaという高速に動作する組み込み系のスクリプト言語で遊んでみたかったのと、それだったmod_luaで遊んでみればいいなと思っただけである。で、実際にmod_luaをコンパイルして遊んでみた。コンパイルオプションは以下。 ./configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr --enable-modules=all --enable-mods-shared=all --enable-mpms-shared='prefork worker event' -

    Apache 2.4.1のmod_luaでApacheに介入する(mod_rewriteの終焉?)
    rryu
    rryu 2012/03/28
    mod_perlみたいに気軽にApacheモジュールが作れると夢が広がると思いつつmod_perlはメモリ的に重量級過ぎてつらいという状況が解消できるかも。
  • Apacheが%2Fを勝手にデコードして生きるのが辛いとき - かみぽのメモ

    mod_rewriteでの最後の砦 - As a Futurist...をみて、僕もApacheでURLに%2Fを含むリクエストをリバースプロキシするときに困ったことがあったなーというのを思い出した。 AllowEncodedSlashes On RewriteRule ^/(.*)$ http://backend/$1 [QSA,L,P]みたいな設定を書いてるときにfrontendに http://frontend/keyword/Fate%2Fstay+nightなリクエストが来ると、この設定だとbackendには http://backend/keyword/Fate/stay+night%2FがデコードされたURLにプロキシしてしまう! %2Fのままプロキシするには以下のように設定をすればよい。 AllowEncodedSlashes On RewriteCond %{THE_RE

    Apacheが%2Fを勝手にデコードして生きるのが辛いとき - かみぽのメモ
    rryu
    rryu 2012/01/19
    mod_rewriteでプロキシするときにパスに%2Fが含まれていると困る問題。
  • AddDefaultCharset(core - Apache HTTP サーバ)

    This directive enables operating system specific optimizations for a listening socket by the Protocol type. The basic premise is for the kernel to not send a socket to the server process until either data is received or an entire HTTP Request is buffered. Only FreeBSD's Accept Filters, Linux's more primitive TCP_DEFER_ACCEPT, and Windows' optimized AcceptEx() are currently supported. Using none fo

    rryu
    rryu 2012/01/19
    AllowEncodedSlashesディレクティブ。Apacheはデコードしてからファイルシステムとマッチングするため、パスに%2Fが含まれるとややこしくなるのでデフォルト禁止になっているらしい。
  • ApacheとSSIとPHP

    PHPをSSIでインクルードしたい場合にはどうしたらよいのか。今回いろいろ試したので書いておこうと思う。Apacheのバージョンは2.2.3で試した。foo.html内にfoo.phpをインクルードするとする。 ---Apacheの関係する設定--- OptionsにIncludesは必須。これは普通のSSIと同じ。さて、ここで二つの場合がある。 Includesが指定されている場合 - すべてのSSIコマンドが使える。重要なのは<!--#exec cmd=... -->、<!--#exec cgi=...-->、<!--#include virtual=...-->の三つ。これらすべてが使える。 IncludesNoExecが指定されている場合 - 上記三つのうち、<!--#exec ...-->の二つのコマンドは利用できない。<!--#include virtual=...-->のみが

    rryu
    rryu 2011/09/09
    PHPをSSIでインクルードしようとして「unable to include potential exec」というエラーが出た場合の対処方法。
  • Apache killerは危険~Apache killerを評価する上での注意~

    Apacheの脆弱性(CVE-2011-3192)いわゆるApache killerが話題になっていますが、その脅威については一部誤解があるようです。 以下は、非常に脅威とする報告の例です。 一方今回のはプロセスの肥大化を伴うので、実メモリ消費して更にスワップも使い尽くしてOS毎激重になったあげくLinuxとかの場合はOOM Killer発動と、他のプロセスや場合によってはOSを巻き込んで逝ってしまいます。 CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.xより引用 以下は、それほど脅威でなかったとする報告の例です。 pooh.gr.jp は結構頑丈だったので 60 並列でやっと CPU idle 30% まで減らせた。 Apache Killer (CVE-2011-3192) 対策 for CentOS 5

    rryu
    rryu 2011/08/28
    つまりApache killerはサーバのリソースをきっちり使うようパフォーマンスチューニングされたApacheほどよく効くという。
  • CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.x - LowPriority

    数日前からFull Disclosureで騒がれてたけどやっとCVE採番されたので。 以前のISC BINDの脆弱性(CVE-2011-1910)とかに比べるとzero-day状態に なったにも関わらずApache側の動きが遅い気もします。(表に見えてなかっただけ?) アドバイザリは以下 CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.x http://mail-archives.apache.org/mod_mbox/httpd-announce/201108.mbox/raw/%3C20110824161640.122D387DD@minotaur.apache.org%3E/ DoSだけといってしまえばそれまでですが、Apache HTTPDでは久しぶりに 現時点で出ている全バージョンが対象 (2011/

    CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.x - LowPriority
    rryu
    rryu 2011/08/26
    ApacheのRange攻撃脆弱性は、作り出したmultipartなレスポンスを一度メモリ上に持つので、ワーカーのフットプリントが大きくなってリソース不足に陥るということらしい。
  • mod_proxy_html

    Note mod_proxy_html has now been relicensed and incorporated into the core Apache HTTPD distribution at apache.org from HTTPD 2.4. That version is now likely to be more up-to-date than this one. Here a one-line bug-fix has been introduced since version 3.1.3. If you downloaded the bundled package from here, you should apply the patch before compiling. The bug won't affect most users and is not a s

    rryu
    rryu 2010/12/14
    リバースプロキシした時にいつも困るHTML内の内部サーバの絶対URLを外部サーバのものに置換してくれるモジュール。
  • apache module 開発事始め : DSAS開発者の部屋

    先日は,必要に迫られて Apache 1.3 の mod_access を改造したという話を書きました.その時は単にあるものを改造しただけでしたが,ふと思い立って,一から Apache 2.0 用のモジュールを書いてみました.書く上で色々 Web サイトを探してみたのですが,あまり日語の入門向けの文章が見あたらなかったので,開発する上で分かったこと(と言うほど大したものじゃないですが)をまとめておこうと思います. フェーズには,例えばそのリクエストを受け付けるか拒否するかを決めるフェーズや,リクエストされた URI と実際のディスク上のファイルとの間の対応付けを解決するフェーズ,そしてもちろん実際のレスポンスを生成するフェーズ等があります.hook 関数を挿入するポイントはこれらのフェーズになりますが,もちろんその全てのフェーズのための関数を用意する必要はありません.また個別の設定を施す

    apache module 開発事始め : DSAS開発者の部屋
    rryu
    rryu 2010/06/01
  • mod_ext_filter - Apache HTTP Server

    Summary mod_ext_filter presents a simple and familiar programming model for filters. With this module, a program which reads from stdin and writes to stdout (i.e., a Unix-style filter command) can be a filter for Apache. This filtering mechanism is much slower than using a filter which is specially written for the Apache API and runs inside of the Apache server process, but it does have the follow

    rryu
    rryu 2009/07/16
    任意のコマンドをフィルタに設定できるモジュール。URLの置換など開発時には何かと役に立つ。ExtFilterDefineがhtaccessには書けないのがちょっと面倒。まあ書けると危険ではあるのだが。