最終更新 2015年8月13日 環境 Windows 8.1 update1 x64 / Apache 2.4.16 / PHP 5.6.12 PHPと言えばHTTPサーバー、特にApacheと組み合わせて使われる事が多いですね。 そこで今回はApacheとPHPをWindowsにインストールしてみます。 1.ダウンロード まずは64bitWindows用のApacheをこちらからダウンロードします。 kazuはver2.4.xをダウンロードする事にしました。 次はこちらからPHPをダウンロードします。 kazuはver5.6.xをダウンロードする事にしました(Apacheモジュールとして使う場合はThread Safe版が必要です)。 またApacheとPHPの動作に、Microsoft Visual C++ 2012 再頒布可能パッケージ (x64)が必要になる場合もあるので(このライ
自宅サーバーのApacheのログに意味が分からないエラーが残るので調べて解決した。 エラーログを見ると [warn] (OS 64)指定されたネットワーク名は利用できません。 [warn] (OS 121)セマフォがタイムアウトしました。 のように書かれています。 連続して、一定のアクセスで起こる現象のようなので根本的なバグのような感じです。 症状は、ネットワークが切断されてApacheやスクリプトが停止してしまう。 古いLinuxのサーバーでは起こっていないので、Windows系のOSとApache2.x.x系のアプリで場合によって起こる特殊なエラーです。 不具合が起こる特定の原因・場所は、サーバーのNIC(ネットワークカード・LANボード・LANカード)ドライバで、未解決な問題の為にユーザーが設定などで対処する必要があります。 不具合を解決する方法 1.デバイスマネージャーにてLANカ
人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 これまでのApache2.2系以前でのアクセス制御の書き方は賛否両論でした。僕はあまり好きじゃありませんでした。 過去のアクセス制御に関しては、以下の記事がとてもわかりやすくまとめられていると思います。 こせきの技術日記 – Apacheのアクセス制御をちゃんと理解する。 ここで、以下のように言及されています。 こんなバッドノウハウ、本当はどうでもいいと思う。Apache 3.0では、かっこいいDSL(VCL)で書けるようにする構想があるらしいのでがんばってほしい。 ということで、2.4系ではDSLとはいかないまでも、Require*というディレクティブを使ったモダンな書き方ができるようになったので、それを2.2系以前のアクセス制御の記述と比
とある所ではまって、なおかつ情報があまりなかったので載せておきます。 現象 Tomcatの上に載せたHudsonに、Apacheからmod_proxy_ajp経由でアクセスしようとすると、マルチバイトを含んだURLがうまく処理できない。例えば、新規ジョブ作成( http://localhost/hudson/view/すべて/newJob )をクリックしたときに、マルチバイトのデコードに失敗して404 Not Foundが発生する。 Tomcat - 日本語 - Hudson Wikiの通りに、コネクタに「URIEncoding="UTF-8"」を設定しても発生します。8080・8009番ポート両方に設定しても変わらず。 発生環境 断定はできないけど、多分Windows環境だと起きるみたい。Windowsだと2箇所で発生して、Ubuntuだと起きませんでした。 一応、再現した環境の情報はこ
生まれ変わった「Days of Liris」。プログラミングのこと、Pythonのこと、気になったソフトウェアのこと、身の回りのこと、いろんなこと。など 前回の「Linux/ApacheでNTLM認証」の続きです。前回はLinuxの話でしたが、今回はWindowsとApacheでのNTLM認証です。WindowsならIISが楽ですが、人間、楽ばかりしていてはいけません。 まず、Apacheを動かすWindowsサーバをADのドメインに参加させます。僕は、ドメインに参加済みのマシンをもらったので、どうやって参加させるか知りません。きっとWindowsなので簡単なんだと信じています。 モジュールのインストール Linuxではmod_auth_ntlm_winbindを使いましたが、Windowsではmod_auth_sspiを使います。これ、Apache2.2用のモジュールでそれ以外のバージョ
最近はJenkinsCIが自然に使われるようになり、Javaのビルド環境もMavenで統一しておくと便利です。ですが、Mavenは結構癖が強くて使いこなすのは意外と大変で、deploy周りは結構面倒です。社内や個人的に配布したいプロジェクトをリポジトリに配布する手順をメモしておきます。尚、Sakura VPS + CentOS5.5あたりをベースにしてます。 mvn deploy Mavenを使ってプロジェクトをリポジトリにdeploy(配備)するには、「mvn deploy」コマンドを使います。deploy時には、コンパイルからテストまで行われ、最後にプロジェクトの成果物がリポジトリにdeployされます。deploy方法としては以下の方法がとれますが、ローカルファイルシステムにdeployする事はサポートされていません。 ftp ssh webdav 問題となるのは、deploy後のパ
前から作ろうと思いつつ放置していたApache側でHTMLフォーム認証を行うモジュールを書いてみた。これでPHPだJava ServletだCGIだ関係なく、共通でフォーム認証が利用できます。 というわけでmod_auth_formモジュールです。mod_auth_form-0.0.1.tar.gzこれをApacheに組み込むと、静的なHTMLや画像から、動的なCGI・PHP・Java Servletなどなど、Apacheが取り扱う全てのコンテンツに対してHTMLフォームベースのユーザ認証を行うことができます。 ユーザの情報は普通のBasic認証の場合と同じようにhtpasswdコマンドのパスワードファイルを使用します。なので既存のBasic認証からの移行も簡単。設定例はこんな感じです。 <Directory /path/to/directory> AuthForm On AuthForm
名前は聞いたことあっても何だか良く分からなかったOpenSSL。 そんなOpenSSLを突然使うことになり構築するまでのメモ。 会社にて ひろす > 仕事が無い!仕事! 部長 > じゃあ、鍵が無いとアクセス出来ないサイトを構築してー ひろす > はい、やります! こうして証明書認証が必要なサイトを構築する事に。(←検証用に使うため?) それで調べてみたらOpenSSLを使えば良いらしい(´・ω・`) サーバOSの指定は特に無かったので、一番好きなCentOSで。 クライアントOSはWindows。 # cat /etc/redhat-release CentOS release 5.6 (Final) # uname -r 2.6.18-238.9.1.el5 結局OpenSSLって何? おなじみのwikipediaによると... OpenSSLは、SSLプロトコル・TLSプロトコルのオー
ここでは、Windows版Apacheのログを自動ローテーションしたり、ログファイル名に日付を付加する 方法を紹介します。Apacheには"rotationlogs.exe"という実行ファイルが用意されており、 これを使うことで、通常ログやエラーログを自動的に切り替えることができます。 この"rotationlogs.exe"の格納ディレクトリはApacheをインストールしたディレクトリの"bin"です。 この"rotationlogs.exe"を使うためには、"httpd.conf"をいじる必要があります。 いじる箇所はメイン設定またはVirtualDomain内の"CustomLog"や"ErrorLog"の記述です。 <ログの自動ローテーション設定> CustomLog "| bin/rotatelogs.exe logs/access_%Y%m%d.log 86400" combi
This domain may be for sale!
Apache Software Foundation(ASF)のApache HTTP Server Projectは2月21日(米国時間)、2.4系では初となる一般公開(GA)版「Apache HTTP Server 2.4.1」をリリースした。6年ぶりのメジャーアップグレードとなり、多数の新機能が加わっている。 Apache HTTP Serverは17年の歴史を持つオープンソースのWebサーバー。約4億のWebサイトで利用されており、Webサーバー分野では1996年4月以来トップを独占しているという。 Apache HTTP Server 2.4系ではコア部分およびモジュールに多くの変更が加えられ、また新しいモジュールも多数加わっている。APIについては2.2系を拡張したものとなり、Apache HTTP Server 2.2で動作していたモジュールやアプリケーションについてはリコン
WebDAV で簡易ファイル共有をしたくて、かつ、Windows XP では WebDAV の Basic 認証が無効*1なので、SSL 付きの Apache を Windows XP にインストールしました。ここで注意しておかなくてはいけないのは、私は Windows をサーバーとして使う気持ちは毛頭なくて、あくまでも PC 間でのファイルコピーと、Apache の実験目的に使うだけです。本当は、VMware 上の NetBSD で Samba を動かすというアイデアもありましたが、あまりに遠回りなので諦めました。 さて、上記を簡単に実現できたかというと、実は非常にはまりました。結論から言いますが、 Cygwin をインストールしている時は要注意。セットアップに Cygwin を使うと、いろんな意味ではまります。 このチュートリアルを良く読みましょう。古い情報は、今となっては正確でない場
nginxやvarnishなどがアツいですが、Apacheもまだまだ実績や安定性から採用されていると思います。ここではデフォルトとは異なる値に変更するサーバ設定を中心に、パフォーマンス改善、安全性向上のためのApacheの設定を紹介します。 mpmの確認 > /path/to/bin/httpd -V Server version: Apache/2.2.19 (Unix) Server built: Jun 23 2011 17:13:13 Server's Module Magic Number: 20051115:28 Server loaded: APR 1.4.5, APR-Util 1.3.12 Compiled using: APR 1.4.5, APR-Util 1.3.12 Architecture: 64-bit Server MPM: Worker PreforkやW
ベーシック認証に続き、今回はデータベースを利用した認証方法について解説する。データベースを利用することにより、メンテナンス性やセキュリティの向上が期待できる。 第9回、第10回と紹介してきたWebページの閲覧制限方法も今回が最後となる。最後に紹介する方法は、データベースを使った認証である。データベースを使うといっても、見た目には前回紹介したベーシック認証と変わりはない。 データベース認証のメリット データベース認証とベーシック認証の違いは、コンテンツの閲覧を許可するユーザーの管理をパスワードファイルで行うかデータベースで行うか、という点にある。ユーザーの管理をデータベースで行う利点としては、次の2つが挙げられる。 メンテナンス性の高さ データベースに格納されたデータは、SQLを使って簡単にメンテナンスできる。htpasswdコマンドでユーザーを管理するのは、追加するのも更新するのも面倒だ。
ここからはTomcatをクラスタで動作させるための設定を行っていきます。2台のサーバを用意し、それぞれにTomcatがインストールされているとします。さらにApacheとmod_jkでロードバランスの設定が施されているもう1台のサーバもあるとします。なお以降の説明では、Tomcatのインストールされているディレクトリを「$CATALINA_HOME」とします。 それではTomcat本体の設定を行います。 Tomcatには設定ファイルがいくつかありますが、ここで変更を加えるのは"server.xml"($CATALINA_HOME/conf/server.xml)のみです。まず"server.xml"の「Cluster」要素がコメントアウトされているのを有効にします。 コメントアウトをはずす部分 <Cluster className="org.apache.catalina.cluster.
"apache tomcat 連携" でぐぐっても、古い情報しか出てこないのでメモ。 以下、Apache 2.0.55 + Tomcat 5.0.28 の場合。 ■mod_jk.so の download http://jakarta.apache.org/ →左側の Downloads →中央下あたりの Tomcat →Tomcat Connectors (mod_jk, etc. →もう一度、Tomcat Connectors (mod_jk, etc. (http://tomcat.apache.org/connectors-doc/ にくる) →Download the binaries for selected platforms. →win32 →jk-1.2.15/ →mod_jk-apache-2.0.55.so (ずっと mod_jk.dll を探していたが .so じゃ
OpenSSLはフリーのSSL実装で、mod_sslやApache-SSL、あるいはOpenSSHなどで必要になります。ApacheでSSLを使いたい場合は、OpenSSLのほかに、mod_sslまたはApache-SSLを導入する必要があります。 Apache 1.3.20 + mod_ssl 2.8.4インストールメモ Apache 1.3.6 + SSL 1.3.2 (Apache-SSL)インストールメモ INSTALLの手順通りコンパイルします。 $ tar xvfz openssl-0.9.6b.tar.gz $ cd openssl-0.9.6b $ ./config $ make $ make test rootになってインストールします。 $ su # make install 鍵の作成とサイト証明書の発行 パスフレーズで保護された秘密鍵を生成します。 $ su # cd
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く