サーバ

CentOS7/Apache2.4/SSL設定のお話

CentOS7/Apache2.4/SSL設定のお話

|ω・)そろり。

先日、当Webサイトのサーバーを引っ越しするときに少々ハマってしまったことをまとめました。

CentOS7/Apache2.4/SSL設定のお話です。

Apache2.4は設定内容がごろっと色んなファイルに別れていて戸惑いましたが、落ち着いて考えるとスッキリしたように思います。(小並感

サーバ WEB

サーバーお引っ越し

サーバーお引っ越し

|ω・)そろり。

以前から企んでいた、サーバー移転を敢行しました。

CentOS等ソフトウェアのバージョンアップも兼ねていたので以下のような構成に。

  • CentOS 7
  • Apache 2.4 (CentOS標準)
  • MariaDB 10.3 (MariaDB公式)
  • PHP7.3 (ビルドインストール)

事前に仮想マシンで同じような構成を作って楽に設定できるよう準備していたものの、移転作業中にApache2.4とLet'sEncryptにおけるSSL設定で少々ハマってしまいました。(´・ω・`)

この話は忘れないうちにまとめてアップしようと思います。

サーバ

suexec上書き注意報

suexec上書き注意報

|ω・)そろり。

冒頭から500のイラストですが、エラーではありません。(爆

今日起こったこと。
備忘録も兼ねて書いておきます。

何やらCentOS6のアップデートが来ていたのでインストールして再起動。
確認のためホームページにアクセス。

500エラー。
( ・ω・)? なんで?

エラーログ確認して見ると、、、

suexec policy violation: see suexec log for more details

「suexecの設定がおかしいからsuexecのログ見てね。」

一方、suexecのログは、、、

command not in docroot (/home/[ユーザー名]/bin/php-cgi)

「docrootでコマンド使えね~ぞこの野郎。(かなり意訳)」

そういえばアップデートにhttpdが入っていたなぁ。

どうやらsuexecが上書きされて設定がリセットされてしまったようです。(´・ω・)

仕方がないのでApacheホームページから該当バージョンのhttpdをダウンロードしてビルドし直し、 suexecを所定場所にコピーしたらちゃんと動くようになりました。

めでたしめでたし。

サーバ

Linuxでのソースビルドインストールのディレクトリは?

|ω・)そろり。

VPSをCentOS6で動かしているのですが、どうしてもパッケージが古いのですよ。
そこでLAMP環境を構築するにあたって以下のようにしました。

  • Apache2.2 > yumインストール
  • MySQL5.6 > RPMインストール
  • PHP5.6 > ソースビルドインストール

で、PHP5.6をソースビルドインストールする際にどのディレクトリをインストール先に指定すればよいか?というお話です。

configure のデフォルト設定

大抵 configure のデフォルト設定では

PREFIX=/usr/local

となっていると思います。

そのままでも問題無いのですが、少し困ったことが起こります。

  • アンインストールはどうするんだ。
    (関連ファイルがbin等の多くのディレクトリにバラけるので削除が面倒)
  • 関連ファイル名が同じなのでバージョン違いをインストールできない。
    (例:PHP5.x系と7.x系を共存させる)

どこに指定するか?

自分がLinuxを覚え始めた頃は

PREFIX=/usr/local/php5

という形にしていました。(例:PHP5.x)
が、この指定は行儀が悪いそうです。(´・ω・`)

Linuxには"/opt"というディレクトリがあり、用途として手動でアプリケーションをインストールする際に使用するディレクトリになっているとのことです。
(参考:Linuxの基本の基本。Linuxの基本的なディレクトリ構成 / OXY NOTES)
(参考:各ディレクトリの役割を知ろう(ルートディレクトリ編) / @IT)

そうするとPREFIX設定は下記のようになります。

PREFIX=/opt/php5

アプリケーションのアンインストール

アプリケーションをアンインストールしたい場合は該当ディレクトリごと削除すればいいだけです。
※PATH指定やシンボリックリンクが存在する場合は注意しましょう。

バージョン違いの共存

バージョンごとにディレクトリを指定してやれば、違うバージョンのアプリケーションを共存させることができます。

サーバ

我鯖移転也

|ω・)そろり。

VPS借りてサーバ移転しました。

ひとまず環境は下記の通りにセッティング。

  • CentOS 6
  • Apache + PHP5.6 + FastCGI + MySQL5.6
  • ネームベースSSL(SNI)

ネームベースSSL(SNI)の設定がすんなりとうまくいってホッとしました。

まだ細かい作業はあるのですが、十中八九OKです。

それでは、ぼちぼち運営していきたいと思います。

PHP7.1はよ。(公式によると現在RC3とのこと)

スポンサードリンク