動作条件

サーバー必要条件

必要ソフトウェア

  • PHP 7.3 〜 8.3.x
  • MySQL 5.0.0以上 or MariaDB
  • Webサーバー (Apache2.0以上 or Nginx)
  • ionCube Loader 4.6.2以上 *Ver. 3.0 以上の場合不要

MySQL5.6以上を利用すると、パフォーマンスが良くなるようカスタマイズされています。利用可能なら MySQL5.6以上をご利用ください。

Webサーバ2台以上で冗長化構成をしている場合、プロフェッショナル以上のライセンスが必要となります。

URLの書き換え

URLの書き換えができる必要があります。

Apache

  • RewriteEngineの有効化
  • .htaccessの利用許可(AllowOverride)
  • UserDirディレクティブを使った場所では動きません(例: http://example.com/~hoge/)

Nginx

  • /index.php にリライトされるようにRewrite設定を行う

PHP Extensions

必須

オプション

  • ImageMagick - GDではなくImageMagickを利用したい場合(config.system.yaml => image_magick : on)
  • Gettext - 管理画面を多言語化したい場合
  • SimpleXML - 外部API系モジュールを利用したい場合
  • OPcache - PHPの中間コードのキャッシュをしたい場合
a-blog cms Ver. 3.0 以上の場合は以下も利用可能です
  • APC User Cache - CMSの内部キャッシュとして使用したい場合
  • PhpRedis - キャッシュサーバーとしてRedisを使用したい場合

データベース必須ユーザー権限

  • SELECT
  • INSERT
  • DELETE
  • UPDATE
  • CREATE
  • ALTER
  • INDEX
  • DROP

メール送信

a-blog cms ではメール送信をするために2種類の方法があります。 両方法とも「symfony/mailer」ライブラリを使用して送信しています。



方式 必要な作業
Sendmail サーバーにSendmailがインストールされており、PHPがSendmailにアクセスできるように設定されている必要があります。
SMTP設定をしていない場合、デフォルトでsendmailで送信しようとします。
SMTP SMTP経由で送信します。別途SMTPサーバーを用意する必要があります。
認証方式はパスワード認証と、GmailのSMTPサーバー専用 OAuth認証( Ver. 3.1.19以降 )があります。

送信元メールアドレスのドメインがwebサーバーと違う場合は、メールアドレスのドメインと同じSMTPサーバーと利用するか、SPFレコード(DNS)を設定して「なりすましメール」の防止を行ってください。

管理画面対応ブラウザ

a-blog cmsの管理画面を動作させるためのブラウザ環境です。すべてのブラウザで最新版を推奨しています。

  • Google Chrome
  • Mozilla Firefox
  • Safari
  • Microsoft Edge
  • iOS Safari
  • モバイル版 Google Chrome

PHPバージョン対応表



PHPバージョン 対応 a-blog cms バージョン
5.3.29 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x | 2.6.x | 2.5.x | 2.1.x | 2.0.x | 1.7.x
5.4.x 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x | 2.6.x | 2.5.x | 2.1.x
5.5.x 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x | 2.6.x | 2.5.x | 2.1.x
5.6.x 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x | 2.6.x
7.0.x 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x
7.1.x 2.11.x | 2.10.x | 2.9.x | 2.8.x
7.2.x 2.11.x | 2.10.x | 2.9.x | 2.8.x
7.2.5 3.1.0 ~ 3.1.6 | 3.0.x | 2.11.x | 2.10.x | 2.9.x | 2.8.x
7.3.x 3.1.x | 3.0.x | 2.11.x | 2.10.8 ~
7.4.x 3.1.x | 3.0.x | 2.11.15 ~
8.0.x 3.1.x | 3.0.x
8.1.x 3.1.x | 3.0.12 ~
8.2.x 3.1.14 ~
8.3.x 3.1.14 ~

データベースバージョン対応表



MySQL バージョン MariaDB バージョン 対応 a-blog cms バージョン
5.0.x ~ 5.5.x 5.1.x ~ 5.5.x 3.1.x | 3.0.x | 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x | 2.6.x | 2.5.x | 2.1.x | 2.0.x 
5.6.x ~ 5.7.x 10.0.x ~ 10.3.x 3.1.x | 3.0.x | 2.11.x | 2.10.x | 2.9.x | 2.8.x | 2.7.x | 2.6.x | 2.5.x | 2.1.x | 2.0.x 
8.0.x 10.4.x ~ 11.0.x 3.1.x | 3.0.x | 2.11.x | 2.10.x | 2.9.x

設定できるドメイン

  • IPアドレス
  • localhost
  • ドットが1つ以上あるドメイン

localhost を除くドットなしドメインはご利用いただけません。

サブドメイン・別ドメイン を子ブログに設定

インストールしたシステムの子ブログに、サブドメインや別ドメインを設定することも可能です。

その際には、サーバー側の設定で hoge.com と fuga.hoge.com などのドキュメントルートを同じディレクトリに設定する必要があります。また、ライセンスによって利用が制限されていますので、詳しくはライセンスページをご覧ください。

接続元IPアドレス

CMSで接続元IPアドレスを使用して、ログや制限を設ける機能があります。ただし、リバースプロキシやCDN、ロードバランサーなどが入っていると、正しく接続元IPアドレスが取得できません。

リバースプロキシなどが入っている環境でも正しく接続元IPアドレスを取得するには「config.server.php」の「TRUSTED_PROXY_LIST」に信頼できるプロキシのIPアドレスを設定ください。

複数ある場合はカンマで区切って指定します。

define('TRUSTED_PROXY_LIST', 'xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy');

これは「X-Forwarded-For」HTTPヘッダーから接続元IPアドレスを取得するときに、偽装された接続元IPアドレスを取得しないようにするためになります。 (「X-Forwarded-For」は簡単に偽装できるため)

常時TLS/SSL対応

CMS機能を使った、常時TLS/SSL対応には、CMSがhttpsでのアクセスか判定できる必要があります。 a-blog cmsでは下記のパラメーターをみてhttpsのリクエストか判定しています。この判定がうまくいかない場合、リダイレクトループなど正常でない動作になる場合がありますのでご注意ください。

どれかに1つでも当てはまる場合にhttpsのリクエストとして判定

  • $_SERVER['HTTPS'] に値がセットされている場合
  • $_SERVER['SERVER_PORT'] === '443' の場合
  • $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https' の場合

BASIC認証

管理ページ > コンフィグ > アクセス設定 の BASIC認証を利用するためには、下記パラメーターがPHPで取得できる必要があります。

  • $_SERVER['PHP_AUTH_USER']
  • $_SERVER['PHP_AUTH_PW']

このパラメーターが取れない場合は、.htaccessなどでCMSの機能を使わず設定ください。

画像のロスレス圧縮(可逆圧縮)

画像をロスレス圧縮することにより、画像サイズを小さくすることができ、サイトのパフォーマンスも向上します。 CMSで画像のロスレス圧縮をする場合は、以下対応ライブラリをインストールする必要があります。全てインストールするのではなく、各拡張子で必要なライブラリをどれか1つあれば動作します。