カテゴリー : Apache

[Mac] Mountain Lion で PHP + Apache2 の設定方法

Mac の Mountain Lion にデフォルトでインストールされている PHP と Apache2 を使えるようにする設定方法を調べたのでメモ。

主にこの辺の記事を参考にします。

Mac OS X LionでApache、PHP、MySQLを動かす | HAPPY*TRAP

Mountain Lionでphp – komagata

DB はデフォルトでインストールされている PostgreSQL を使うか、MySQL を Homebrew もしくはソースからインストールして使います。

簡単にできる Mac OS X Lion に PHP + MySQL の開発環境を構築する方法 | ウェブル

MacBookAirでHomebrewを使ったMySQL 5.5.14のインストール | クラスメソッド開発ブログ

HomebrewでMySQLをインストールする時に知っておきたいこと | Macとかの雑記帳

Macでhomebrewを使ってMySqlのインストール – KRAKENBEAL RECORDS

以上です。

[Apahce][PHP] libphp4.so: cannot open shared object file: No such file or directory

Apahce2 + PHP4 構成のサーバーを構築中していまして、Apache起動したら libphp4.so がないってエラーが出ました。

service httpd start
httpd: Syntax error on line 63 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp4.so into server: /usr/local/apache2/modules/libphp4.so: cannot open shared object file: No such file or directory

libphp4.so の Path を調べて、正しい場所へ httpd.conf を修正すれば解決しました。

# find / -name libphp4.so
/usr/local/src/php-4.4.9/libs/libphp4.so
/usr/local/src/php-4.4.9/.libs/libphp4.so
/usr/lib64/httpd/modules/libphp4.so
# vim /usr/local/apache2/conf/httpd.conf
LoadModule php4_module /usr/lib64/httpd/modules/libphp4.so

以上です。


参考情報

libphp4.soの行方 – loumo.jp

[Apache] SSL (HTTPS) で起動しない時の対処方法

Apache を apachectl restart で再起動したら、http は繋がるけど、https は繋がらない問題が発生しました。

原因は、Apache のバージョンが 2.0.x 系で、apachectl startssl か -DSSL オプションを付けて起動するかしないと、SSLサポートが有効にならないみたいでした。

apachectl -v
Server version: Apache/2.0.59

apachectl のオプションであった startssl は無くなりました。 SSL サポートを有効にするには httpd.conf を 編集して関連する mod_ssl ディレクティブを 入れるようにし、それから apachectl start で サーバをスタートしてください。 mod_ssl を有効にする設定ファイルの例が conf/extra/httpd-ssl.conf にあります。

[引用元]:2.0 から 2.2 へのアップグレード – Apache HTTP サーバ

知らないと再起動した後に、https 繋がらなくてサービス停止状態になっちゃうので、下記の記事を参考に apachectl を編集するといいかも。

apachectl 3分ハッキング – C#とか。 – Grim Saga Project 別館:れびんの勉強部屋

あとは、そもそも古いバージョンの Apache を使ってないで、さっさとバージョン上げれば良いのですがね。


参考情報

シリコンバレー 24時: Apacheを 2.0 から 2.2 へアップデートすると SSLが無効になるトラブル

[仕事] Apache2.0.x→2.2.xのSSL対応について|TEAM RISE x すかの日記

[Apache] [warn] _default_ VirtualHost overlap on port 443, the first has precedence

Apache の config ファイルに2ヶ所以上 という感じの記述を書いていてエラーが出ていました。

■ エラー内容

[warn] _default_ VirtualHost overlap on port 443, the first has precedence

今回は、ssl.conf と proxy.conf の2ファイルに別々に記述してしまったというオチ。

[Apache] Invalid command ‘SSLCertificateFile’, perhaps misspelled or defined by a module not included in the server configuration

Apache に SSL の設定をして httpd configtest を実行したら、エラーがでました。

エラー内容

Invalid command 'SSLCertificateFile', perhaps misspelled or defined by a module not included in the server configuration

Apache が mod_ssl に対応してなかったので、mod_ssl を追加することでエラーが消えました。

mod_ssl の追加方法は、ソースからコンパイルしてインストールしている場合と、yum などでインストールしている場合とで違ってきます。

ソースからインストールしている場合

・参考:apxsでapacheにモジュールを追加する

yum でインストールしている場合

mod_sslインストール

# yum -y install mod_ssl

opensslインストール

# yum -y install openssl

以上です。


参考情報

apache+mod_sslでSSL — server-memo.net

かぴぶろぐ