タグ

Apacheとapacheに関するhohoho_ho2005のブックマーク (54)

  • Webサーバー向けのベンチマークツールを使ってみよう(前編)――Apache BenchとSiege | さくらのナレッジ

    WebサーバーやWebサービスの公開前には、そのサーバーがどの程度のアクセスにまで耐えられるかを事前に調査しておくことが好ましい。記事では、こういった調査の際によく使われる「Apache Bench」および「Siege」というツールの使い方を紹介する。 サービスの公開前に行っておくべき負荷テスト 昨今では低価格サーバーでも高性能化が進んでおり、静的なページを表示するだけのWebサーバーや比較的負荷の少ない処理を行うようなWebアプリケーションでは、1台のサーバーのみでそれなりの規模のアクセスに耐えられるようになっている。とはいえ、CPUの性能やメモリ容量、ストレージの種類などによってアプリケーションのピーク性能は変動するため、単純にハードウェアの性能や使用するソフトウェアといった情報だけでどの程度までのアクセスを捌けるのかを判断することは難しい。実際、負荷をかけてみたら「想定していたレベ

    Webサーバー向けのベンチマークツールを使ってみよう(前編)――Apache BenchとSiege | さくらのナレッジ
  • Apacheセキュリティ設定 - Qiita

    cat << _EOF_ > /etc/httpd/conf.d/security.conf # バージョン情報の隠蔽 ServerTokens ProductOnly Header always unset "X-Powered-By" # httpoxy 対策 RequestHeader unset Proxy # クリックジャッキング対策 Header always set X-Frame-Options "SAMEORIGIN" # XSS対策 Header always set X-XSS-Protection "1; mode=block" Header always set X-Content-Type-Options "nosniff" # XST対策 TraceEnable Off <Directory /var/www/html> # .htaccess の有効化 Al

    Apacheセキュリティ設定 - Qiita
  • Hitachi Web Serverのプロセス構造(UNIX版)

    Hitachi Web Serverのプロセス構造を次に示します。 図4-1 Hitachi Web Serverのプロセス構造(UNIX版) Hitachi Web Serverを起動すると,制御プロセスが起動します。制御プロセスは,リクエストを処理するサーバプロセスを起動し,その稼働を監視します。制御プロセスは,最初にStartServersディレクティブで指定した個数のサーバプロセスを生成します。その後のサーバプロセス数は,MinSpareServers,MaxSpareServersディレクティブ指定値に基づいて増減していきます。サーバプロセス数の最大値は,MaxClientsディレクティブで指定します。サーバプロセス数の増減は,制御プロセスが管理します。この処理をメンテナンスと呼びます。 クライアントからのTCP接続は,Listenディレクティブで指定したIPアドレスとポートから

    Hitachi Web Serverのプロセス構造(UNIX版)
  • さくらVPSで一日6万PVを処理するためにしたこと - 新卒インフラエンジニア2年目

    さくらVPSで6万PV程度のサイトを運用することになったので、その際の記録を残しておきます。 さくらレンタルサーバ⇒さくらVPS さくらレンタルサーバで運用している時は、ちょくちょく503が発生しておりこれを解決するためにさくらVPSへの移行を行いました。 レンタルサーバの時は、ログ解析や監視ツールなどを導入していなかったので503の頻度やパターンは不明です。(安易な判断でVPSに移行したので、この点は反省です) 来は原因を追及し、プログラムの改修やサーバ負荷の分散などをすべきですが時間の都合で省いてしまいました。 構成 運用するサイトはpukiwikiで構成されたサイトです。 pukiwikiは、PHPで書かれており大量のデータをRDBを利用せずに構築できる点が大きなメリットです。 今回は1サイトですが、複数のサイトを運用する可能性を考慮してVirtualHostも利用します。 さくら

  • 「ログの見かた」~初心者でもよくわかる!VPSによるWebサーバー運用講座(1) | さくらのナレッジ

    さくらのVPSを使った、初心者向けの記事「VPSによるWebサーバー構築講座」を半年前に公開しました。さくらのVPSを使ってWebサーバーを構築し、WordPressをインストールするまでの手順を解説しました。 しかし、サーバーは構築が完了したらそこで終わりではなく、稼働し続けている間はメンテナンスをしていかなければいけないし、安全に運用するにはセキュリティにも気をつかわなければなりません。 そこで、VPS構築講座の続編として「運用編」をお届けします。いったんWebサーバーとして稼働しはじめたサーバーについて、継続してサービスを続けていけるように運用のノウハウをお届けします。 運用編の連載は5回に分けて行う予定ですが、まず初回は「ログファイルの見かた」について触れたいと思います。 ログファイルについて大きく2種類のログをご紹介します。 WebサーバーApacheのログの見かた ssh関連の

    「ログの見かた」~初心者でもよくわかる!VPSによるWebサーバー運用講座(1) | さくらのナレッジ
  • Apache 2.4 設定ファイルの記述例 - Qiita

    導入 CentOS 7の公式Yumリポジトリから提供されているApacheで動作を確認しています。それ以外のOSでは、設定ファイルが置かれている場所 (英語) やドキュメントルートの初期値が異なる場合があるのでご注意ください。 Apache設定ファイル (*.conf) のシンタックスハイライト CentOS標準のYumリポジトリで提供されているテキストエディタのうちVimEmacs以外のエディタは、初期状態で.confファイルのシンタックスハイライトが機能しません。以下のように設定ファイルの編集などを行い、シンタックスハイライトを有効にします。 gedit Bug 612368 – Language definition for Apache configuration filesで公開されているファイルを利用します。 # Apache設定ファイル用の言語設定ファイルをダウンロード w

    Apache 2.4 設定ファイルの記述例 - Qiita
  • Apache HTTP Server: MPMパラメータ チートシート

    こんにちは滝澤です。たまにはapacheネタということで一つ。 Apache HTTP ServerのパラメータチューニングではMaxClientsなどのMPM(マルチ プロセッシング モジュール)関連のディレクティブの設定値を調整することが多いです。記事ではMPM関連のディレクティブのデフォルト値やディレクティブ間の関係を表にまとめたので紹介します。 注意事項 UNIX系OSにおける説明となります。バージョン2.2系および2.4系の両方について説明します。 関係式においてバージョン2.4系の場合はMaxClientsをMaxRequestWorkersに置き換えて読んでください。 ディレクティブ名には公式サイトのリンクを張っています。公式の説明も確認してください。 デフォルトの欄で括弧付きものはそのディレクティブそのものは設定不可ではあるが、内部的に設定されているデフォルト値を示してい

    Apache HTTP Server: MPMパラメータ チートシート
  • Dockerでapacheを動かす - Rhythm & Biology

    Dockerのコンテナでapacheを動かすまでのメモ 環境 Mac OS X 10.8 Ubuntu 12.04 (Vagrant) Ubuntu 12.04 (Docker) ファイル構成 vagrant$ find . . ./Dockerfile ./htdocs ./htdocs/index.html vagrant$ cat htdocs/index.html <!DOCTYPE html> <html> <body> <h1>Hello Docker!</h1> </body> </html> Dockerfile ubuntu:12.04ベース aptでapache2をインストール ホストのhtdocsディレクトリの中身をコンテナの/var/www配下に転送 80番ポートをexpose コンテナ起動時にapacheを起動 FROM ubuntu:12.04 MAINTAIN

    Dockerでapacheを動かす - Rhythm & Biology
  • virtualenv + flask + apache + wsgi で動かすまで - Qiita

    apacheでflaskアプリケーション動かすまでのフローを駆け足で。 Werkzeug ならけっこう簡単に起動までできるけど、 apache + mod_wsgi になると途端にハードル上がるので、ざっくりまとめてみた。 全てmacの場合なので、適宜パス等は読み替えてください。 初期設定 この辺を参考に virtualenv 入れる。 http://qiita.com/k2tanaka/items/5f111612ec1b6d7584a6

    virtualenv + flask + apache + wsgi で動かすまで - Qiita
  • Webサーバのチューニング

    1. WEBサーバのチューニング CONTENTS ⇒ Apache ⇒ その他 ※普段のデフォルトからの変更内容とその他。 もっとこうしたほうがいいという ご意見ありましたらぜひ伺いたいです! @smallpalace 2. 自己紹介 ID:Twitter smallpalace お仕事: 課金系ASPや各種携帯サービス運営等をしている会社 でサーバインフラ系の仕事をしています。+主婦。 興味のあること: 楽して高速化、効率よく設定運用し寝る時間を確保 比較的好きなこと: MySQL、シェルスクリプト 好きなべ物: 早朝メンテ明けに一人で築地に行く程度に魚が好きです。 4. サーバの情報を隠ぺいする 44,45c44 < ServerTokens Prod < TraceEnable off ・ ProductOnly。気休めのセキュリティ対策。バージョン --- 等を隠す。

    Webサーバのチューニング
  • Apacheチューニング

    2. チューニング • KeepAliveの設定 • コンテンツの圧縮転送 • 不要モジュールの削除 • シンボリックリンク先の参照許可 • TimeOutの設定 • DNS問い合わせの無効 • .htaccessの無効化 • Prefork MPMのチューニング • Worker MPMのチューニング 3. KeepAliveの設定 ディレクティブ 値 説明 KeepAlive On 同一クライアントに対し コネクションを使い回す MaxKeepAliveRequests 1ページあたりの平均 的なコンテンツ数 + α 1つのKeepAliveで受け付け るリクエスト数 KeepAliveTimeout 1ページ当たりの平均 的な転送時間+α クライアントからのリクエ ストがなくてもKeepAliveを 維持する秒数 5. 不要モジュールの削除 デフォルトでは多くの拡張モジュー ルが組み

    Apacheチューニング
  • 複数のWebサーバでSSLセッションキャッシュを共有してSSL処理を高速化(Apache + mod_ssl + mod_socache_memcache) - 元RX-7乗りの適当な日々

    HTTPS(SSL利用)サイトがSEO的に優遇されるトレンドで、世間的にもHTTPS接続でサイト運用するサービスが増えてきています。 これが、ハイトラフィックサイトになってくると、このフロントエンドでSSL処理させることが負荷的にもなかなか辛いのです。 で、Apache 2.3以降では、Shared Object Cache Providerとして、memcachedが選択できるようになっています。 この仕組みを利用して、Apacheとmemcachedを並べることで、各サーバでユーザのSSL Session Cacheを共有しながらHTTPSリクエストを負荷分散できる構成を作ってみました。 WebサーバでSSLオフロード 常時SSLを利用したWebサイトを運用するために、SSLアクセラレータといったアプライアンス製品だとか、ソフトウェアだとApacheやNginxのSSLモジュールを使う

    複数のWebサーバでSSLセッションキャッシュを共有してSSL処理を高速化(Apache + mod_ssl + mod_socache_memcache) - 元RX-7乗りの適当な日々
  • アプリサーバー対決 パート1:主なRubyアプリケーションサーバーの機能比較 - Engine Yard Blog

    記事は英語版ブログで公開された記事の翻訳版です。 2013年7月に、米国テキサス州オースティンで開催されたLonestar Ruby Conferenceで、Rubyによるアプリケーションサーバーについてお話させていただきました。その中でいくつかのRubyアプリケーションサーバーのパフォーマンスや、さまざまな状況における挙動の違いを比較しました。この記事では、講演準備として行ったリサーチの中で分かったことをかいつまんでご紹介します。 実際のカンファレンスの録画をご覧になりたい方は、Confreaksで公開されていますのでそちらをご参照ください。テストに使用した簡単な自作アプリケーションはGitHubに、講演スライドはSlideshareにそれぞれ公開しています。 このリサーチは、Passenger 4のパフォーマンス評価以外すべて2013年7月に行ったものなので、情報が多少古くなっている

    アプリサーバー対決 パート1:主なRubyアプリケーションサーバーの機能比較 - Engine Yard Blog
  • Docker + fig で Apache + fluentd + Elasticsearch + Kibana を試す - Qiita

    % docker version Client version: 1.3.0 Client API version: 1.15 Go version (client): go1.3.3 Git commit (client): c78088f OS/Arch (client): darwin/amd64 Server version: 1.3.0 Server API version: 1.15 Go version (server): go1.3.3 Git commit (server): c78088f 構成 今回は fig を使って以下の3つのコンテナを作成して連携させる。 コンテナ名: web Apache fluentd コンテナ名: elasticsearch Elasticsearch コンテナ名: kibana Apache Kibana webコンテナがフロントエンド

    Docker + fig で Apache + fluentd + Elasticsearch + Kibana を試す - Qiita
  • FluentdでApacheのエラーログを収集する正規表現 - Qiita

    Apache のエラーログを in_tail プラグインで収集する設定サンプルを紹介します。 fluent.conf (td-agent.conf) fluentd < v0.10.53 OR td-agent < v1.1.21 <source> type tail path /var/log/httpd/error_log format /^(\[(?<time>[^\]]*)\] \[(?<level>[^\]]+)\] (\[client (?<host>[^\]]*)\] )?(?<message>.*)|(?<message>.*))$/ time_format %a %b %d %H:%M:%S %Y tag apache.error pos_file /var/log/td-agent/apache_error.pos </source> # 送り先を Fluentd の標

    FluentdでApacheのエラーログを収集する正規表現 - Qiita
  • Apacheのチューニングメモ - Qiita

    個人的Apacheチューニングのメモ。 間違いがあったら教えて下さい! prefork 前提 Apacheでは、リクエストはApacheの子サーバプロセスが処理する。 子サーバプロセスは動的にforkで生成されたり、殺されたりする。 が、forkはとても重い処理なので、forkが発生しないように設定するのがよい。 チューニング方針 負荷が高かろうが低かろうが常に一定数のプロセスが動いている状態にする。 preforkの動作 MaxClientsは絶対値。 子プロセス数はこの値を超えない。 (以下正確ではないですが簡単に) Apacheは負荷が高くなってきたら 子プロセスを生成していく アイドル状態の子プロセスはMinSpareServers以上になるよう維持 MaxClients以上の子プロセスは生成しない MinSpareServersよりMaxClientsが強い 負荷が低くなってきた

    Apacheのチューニングメモ - Qiita
  • CentOS6にmuninをインストール。ついでにApacheとMySQLも監視。: Usoinfo blog

    この画像の例のように、muninでサーバーを軽く監視しておきたいので、インストールしようと思う。 1. muninはepelからインストールするので、入れてなければ EPELを設定。 http://mirrors.fedoraproject.org/publiclist/EPEL/ ここから適当なミラーを選ぶと良いが、どこかのミラーから epel-release-6-8.noarch.rpm を入れる。% su # rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm ... # vi /etc/yum.repos.d/epel.repo ... enabled=0 (デフォルトではepelを見に行かないようにしておく。この辺はお好みで。) ... 2. 次に、muninとmu

  • 実践編:Camel, Tomcat, MySQL によるWeb APIアプリなものを高速開発 - Qiita

    アプリをAPI化して各アプリを疎結合していく作りが多くなっていくこの世の中、 Apache CamelからDBにつなぐ方法、Tomcat等のコンテナで動作させる方法などなどが分かるとAPI的な実用なものがサクッと作れたりする所を今回説明。 (CamelからJettyを扱えるのでTomcat使わなくても動くけど) 今回の目標 IDを指定してhttpで問い合わせるとDBテーブルの内容をそのままJSONデータで返すアプリを作ること // tomcatで受信したデータを取得 http://localhost:8080/appname/list?id=123 from("servlet:///list") // アクセスログを出力(ログイン処理ではない〜) .to("log:in") // SQLで情報を取得 .to("sql:SELECT * FROM myitems WHERE user_id

    実践編:Camel, Tomcat, MySQL によるWeb APIアプリなものを高速開発 - Qiita
  • たった6個のsedを通せば、Apacheログは驚くほど扱いやすくなる - Qiita

    Q. awk '{print $9}'とかでUser-Agent丸ごと取り出したい とか思ったことない? Apacheのログ解析で。でもできないじゃない。例えば 192.168.0.1 - - [17/Apr/2014:11:22:33 +0900] "GET /index.html HTTP/1.1" 200 43206 "https://www.google.co.jp/" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36"

    たった6個のsedを通せば、Apacheログは驚くほど扱いやすくなる - Qiita
  • フロントエンジニアに知ってもらいたいリバースプロキシの重要性 | RickyNews

    Randen Pederson 大規模なシステムであれば使っているであろうリバースプロキシ。 セキュリティや稼働率の観点からみて利用することは非常にメリットは高いです。 ただ、社内や周りであまり知見がなく、 「動くからいいや」という理由でApacheをそのままWebサービスの一次受けとして利用されている方も多いと思います。 動くという目的からすれば確かにその通りですが、ただ一枚リバースプロキシを入れるだけで ぐっと運用効率、稼働率も拡張性も上がります。 1. ルーティング処理の簡略化 例えばRESTfulな一般的なAPI構成を作りたいと思った時に以下のようなURL構成になると思います。 http://api.something.com/search/v1/item/list.json?cid=xxxx&gid=xxxxx もしアプリケーション側のルーティングしか知らなければframewor

    フロントエンジニアに知ってもらいたいリバースプロキシの重要性 | RickyNews