違うバージョンのPHPを動かしたい! Webアプリを運用していると、開発が活発なアプリ、あまり更新されないアプリで、動作要件が変わってきたりします。特に大きいのは、Webアプリを動作させる肝となる、シェル言語のバージョン。で、軽量なWebアプリでメジャーな言語はPHP。このPHPって曲者で。バージョンアップでかなり言語仕様が変わります。なもので…最近PHP5じゃないと動かないアプリと、PHP5のサポートを終了させようとしているアプリが入り乱れてきました。なもので、古いアプリはPHP5、新しいアプリはPHP7で動かす環境を作らないといけなくなってまいりました。でも、Webサーバ(Apacheやnginx等)を複数動かすのはとてもうれしくない。なので、Apache一つで、Webアプリによって動作させるPHPを分けて見るようにします。 では、行ってみましょう どうやって複数バージョンのPHPを共
Linux CentOS 8 標準の Apache と PHP の関係について※当サイトにはプロモーションが含まれています。 1. はじめにCentOS 8 に用意されたパッケージを使って、Apache と PHP を導入・連携して動作させる場合に、この2つのアプリケーションがどのように関係しているのかについて説明します。 2. CentOS 8 での変更点Apache には、「受け付けたリクエストをどのように処理するか」を決める MPM (Multi Processing Module) という設定項目があり、マルチスレッドで動作する “worker” や “event“、もしくはマルチプロセスで動作する “prefork” のどれかを指定しなければいけません。 Apache から PHP を連携させるために mod_php モジュールを利用する場合は、このモジュールが スレッドセーフな
Internet, mobile applications, skiing, snowboarding, food… you know, whatever comes to mind. We’re using a few custom Munin graphs at CafeMom to monitor our application code running on production servers. I posted two samples of these to the WebOps Visualization group at Flickr. The first graph measures the “uptime” of our code, a measure of how many minutes it’s been since our last deployment t
AWSの公式情報探していてググっても出ないと思っていたら英語で見つかりました。 めもめも。 Apacheの設定情報(※必ず英語に切り替えて読む) Use Apache as a Back-End Server for ELB 設定項目 値 Timeout 120 KeepAlive On KeepAliveTimeout 120 MaxKeepAliveRequests 100 AcceptFilter AcceptFilter http none AcceptFilter https none LogFormat LogFormat "%{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\"" combined トラブルシュート情報(※必ず英語に切り替えて読む) ブラックボックス
概要 Apache HTTP Server 2.4.13 で CGIPassAuth ディレクティブ (公式マニュアル) がコア機能に追加されました。このディレクティブのデフォルト値は Off です。On をセットすると CGI (FactCGI) で Authorization ヘッダーを環境変数で扱うことができるようになります。CGIPassAuth ディレクティブは .htaccess でも使うことができるので、共用のホスティングサービスでも利用できることを意味します。 以前のバージョンでは mod_rewrite の RewriteRule ディレクティブを使うかコンパイル時に SECURITY_HOLE_PASS_AUTHORIZATION フラグを指定する必要がありました。これらの方法と比べて CGIPassAuth ディレクティブのほうがかんたんです。 mod_cgi、mod
CentOS 7の標準環境だけですぐできる、WordPress「5.4倍高速化」テクニック 後編:とにかく速いWordPress(4)(2/3 ページ) Apacheを「event MPM+php-fpm」構成に変更する 最後に、今回のチューニングの総仕上げとなる作業をしましょう。Apacheの構成を「prefork MPM+mod_php」構成から、「event MPM+php-fpm」構成に変更することで、さらなる最適化が図れます。 従来、Apacheの主流となるマルチプロセッシングモジュールは「prefork MPM」でしたが、Apache 2.4から「event MPM」が選択できるようになりました。event MPMは、fast cgi方式のphp-fpmと組み合わせることによって、従来のprefork MPM+mod_phpの組み合わせに比べて、メモリ使用量を大きく減らし、同時
概要 Apache の設定について共通化できるセキュリティ設定とその各項目についてまとめた。 設定例 必須設定 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対策 Trace
###Introduction This tutorial will show you how to set up a TLS/SSL certificate from Let’s Encrypt on an Ubuntu 14.04 server running Apache as a web server. SSL certificates are used within web servers to encrypt the traffic between the server and client, providing extra security for users accessing your application. Let’s Encrypt provides an easy way to obtain and install trusted certificates for
PHP7で時代が変わるかも ハローみなさん、エジソンです。 PHP7がRCバージョンとしてリリースされているようです。前バージョンのPHPの2倍以上のパフォーマンスが計測されており、高いポテンシャルを有していると、ちまたで噂のPHP7先生でございます。 これは、インストールして試してみるしかない! ということで、インストールして動作環境を構築にすることに成功したので、手順をまとめてみました。 IT用語辞典バイナリ - RC版 RC版とは、ハードウエアやソフトウエアの開発段階のひとつで、製品候補としてのテスト工程に入ったもののことである。 PHP7のインストール手順 前提となる環境は、 Windows7 の 64bit版 です。 PHP7のダウンロード まずは、PHP7(VC14 x64 Thread Safe)を入手します。以下のサイトからダウンロードしましょう。 PHP For Wind
はじめに Apacheの設定ファイル、ちゃんと書けますか?一つ一つ意味を理解していますか? http.confを開いた瞬間に「うっ頭が頭痛」になったことはないでしょうか? yumやaptでApacheをインストールして、設定ファイルをちょろっと編集しただけでお茶を濁したことはないでしょうか? でもいつまでもその状態ではいけません。そろそろ本気で勉強して無駄のない設定ファイルを書くときが来たのです。 2015年のWebサーバ界におけるApacheの立ち位置についておさらい 2015年現在、静的コンテンツの配信やリバースプロキシの役割はその用途に特化したWebサーバを使うのが主流になっています。具体的にはNginxがデファクトスタンダートになっています。 Apacheにもイベント駆動型で動くmpm eventというモジュールがあり、これを使えば高速に多数の接続をさばくことができます。 人間とウ
Apache2.2/CentOS6で動いていたサービスをApache2.4/CentOS7に移植しようとしたらハマったのでメモ。 CentOS7でsudo systemctl start httpdしたら、コンソールが待ち状態のまま制御が戻ってこない。なんでだろ・・? — DQNEO (@DQNEO) May 21, 2015 症状 systemctl start したら延々待たされたあげくApacheが起動しない [vagrant@localhost ~]$ sudo systemctl start httpd.service # ここでシェルが固まったまま制御が返ってこない! [vagrant@localhost ~]$ sudo systemctl status httpd.service httpd.service - The Apache HTTP Server Loaded:
fuelPHPはPHP5.3.3以上で動作するオープンソースのWEBアプリケーションフレームワークで、HMVCモデルを用いています。 それまで海外では主流だったCodeIgniterの開発者がスピンアウトして開発したフレームワークで比較的新しいこともあり、他のフレームワークのいいとこ取りをした機能と軽量なコードが売りとなっています。MITライセンスで提供さています。 というわけで、ちょっと使ってみようと思ってインストールしたものの、エラーが出てWelcomeページも出てこない、なんていう初歩的な問題に出くわしたときの備忘です。 状況としては、マニュアルどおりにfuelPHPをインストールしてApacheを起動してインストールした公開ページのURLにアクセスするのですが、 httpステータスが404(Not Found)を返す という状況です。Apacheのアクセスログを確認すると、 [Tu
2015年2月23日(月) ■ apache 多重拡張子 _ mod_mime の多重拡張子の扱いって常識じゃなかったのか。apache をインストールしたことある人ならば、manual/hoge.html.ja という二重拡張子を持つファイルが存在してることはドキュメントを読まなくても知ってるはずだと思うんだけどなぁ。AddHandler/AddType/AddCharset/AddLanguage/AddEncoding/AddOutputFilter はいずれも拡張子によって挙動を変えるわけで、単一の拡張子しか扱えないとすればこれらのディレクティブは排他にしか使えなくて困るじゃないか。 _ で、これはセキュリティの懸念があるから使うなというのがよくわからん。hoge.php.jpg というファイルをアップロードされて、それをそのままダウンロードしたらそいつが PHP スクリプトとして
tkbctf#4のITF Point Systemの出題に使ったネタです。 知ったタイミングでブログ記事かなんかにしたかったのですが、問題に使うと決めてしまったので今の今まで書くことが出来ませんでした。 mod_mime - Apache HTTP Server Version 2.4 ファイルは複数の拡張子を持つことができ、拡張子の順番は通常は関係ありません。例えば、ファイル welcome.html.fr がコンテントタイプは text/html に、言語はフランス語にマップされる場合、welcome.fr.html もまったく同じ情報にマップされます。 同じメタ情報にマップされる拡張子が複数あるときには、言語と コンテントエンコーディングを除いて、 右側にあるものが使用されます。たとえば、.gif が MIME タイプ image/gif にマップされ、.html が MIME タイ
元ネタはこちら。 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のドキュメン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く