アットウィキロゴ

PowerCMS 7のインストール(その1)

PowerCMS 7のインストール方法について記載します。

インストールディレクトリは以下のようになります。
WEBパス ディレクトリ
/mt /var/www/mt
/ /var/www/html

なお、前提条件として、PowerCMS7の動作要件を満たす
  • Apache
  • MySQLもしくはMariaDB
  • PHP
が既にインストールされているものとします。

1. Apacheの設定

(1) /etc/httpd/conf/httpd.conf
CGIを有効にします。
<IfModule alias_module>
    ScriptAlias /mt/ "/var/www/mt/"
</IfModule>
 
<Directory "/var/www/mt">
    AllowOverride All
    Options FollowSymLinks ExecCGI
    Require all granted
</Directory>
 
<IfModule mime_module>
    AddHandler cgi-script .cgi .pl
</IfModule>
(2) /etc/httpd/conf.modules.d/01-cgi.conf
有効のままにしておきます。
(3) CGIの動作テスト
CGIプログラムが動作するかテストを行います。
# mkdir /var/www/mt
# vi /var/www/mt/test_env.cgi
#!/usr/bin/env perl

print "Content-type: text/html; charset=utf-8", "\n\n";
print "<HTML><BODY>", "\n";
print "<H1>環境変数</H1><HR>", "\n";
foreach my $key( keys %ENV ){
        print "$key: $ENV{$key}<BR>", "\n";
}
print "<HR>", "\n";
print "</BODY></HTML>", "\n";
# chmod 755 /var/www/mt/test_env.pl
ブラウザからアクセスします。
https://www.example.jp/mt/test_env.cgi
※「www.example.jp」は実際のFQDNを入力して下さい。

正常に表示されればOKです。
(4) 「503 Service Unavailable」などのエラーが出る場合
mod_cgidはApacheとCGIデーモンの通信にUnixドメインソケットを使います。
このScriptSockの設定がされていない可能性があります。
# vi /etc/httpd/conf.d/cgid.conf
<IfModule cgid_module>
    ScriptSock /run/httpd/cgid.sock
</IfModule>
# systemctl reload httpd.service
ブラウザからアクセスします。
https://www.example.jp/mt/test_env.cgi
※「www.example.jp」は実際のFQDNを入力して下さい。

正常に表示されればOKです。
一度「/var/www/mt」ディレクトリを削除します。
# rm -rf /var/www/mt

2. Perlのインストール

(1) Perlのインストール
PowerCMS7はPerl CGIで動作します。
# dnf install perl
(2) Perlのバージョンが対象外の場合
PowerCMSのPerlの推奨バージョンは5.39以下となっています。
しかし、AlmaLinux 10などではPerlのバージョンが5.40.2などになって対象外となっています。
そのため、安定版の5.38をインストールします。
ただしOSの他の動作に影響を与える可能性もあるので、標準の5.40.2とは別のディレクトリにインストールします。
[a] Perl 5.38.3のダウンロード
# cd /usr/local/src
# wget https://www.cpan.org/src/5.0/perl-5.38.3.tar.gz
# tar xvfz perl-5.38.3.tar.gz
# cd perl-5.38.3
[b] Perl 5.38.3を/opt/perl-5.38.3にインストール
# ./Configure -des \
  -Dprefix=/opt/perl-5.38.3 \
  -Dusethreads \
  -Duseshrplib
# make
# make test
# make install
[c] Perl 5.38.3の確認
# /opt/perl-5.38.3/bin/perl -v
「/usr/local/bin/perl」にシンボリックリンクを設定。
# ln -sf /opt/perl-5.38.3/bin/perl /usr/local/bin/perl
# /usr/local/bin/perl -v
[d] ApacheでPerl 5.38.3を使用するように設定
現在Perlは以下のようにインストールされています。
/usr/bin/perl デフォルト(5.40.2)
/usr/local/bin/perl 5.38.3
「/usr/local/bin/perl」を優先的に利用するようにPATHを設定します。
# vi /etc/httpd/conf/httpd.conf
<Directory "/var/www/mt">
    AllowOverride All
    Options FollowSymLinks ExecCGI
    Require all granted
 
    SetEnv PATH "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
</Directory>
ApacheでPerl 5.38.3が利用されているか確認
# vi /var/www/mt/perl_ver.cgi
#!/usr/bin/env perl

print "Content-Type: text/plain\n\n";
print "Perl version: $]\n";
print "Perl path: $^X\n";
print "PATH: $ENV{PATH}\n";
# chmod 755 /var/www/mt/perl_ver.cgi
ブラウザから確認します。
# https://www.example.jp/mt/perl_ver.cgi
以下のように表示されればOKです。
Perl version: 5.038003
Perl path: /opt/perl-5.38.3/bin/perl
PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
[e] rootのログインシェルでPerl 5.38.3を使用する
Perl関連モジュールをインストールするので、rootのログインシェルでPerl 5.38.3を使用するように設定します。
vi /etc/profile.d/perl538.sh
export PATH=/opt/perl-5.38.3/bin:$PATH
反映します。
source /etc/profile.d/perl538.sh
確認します。
which perl
perl -v

3. PowerCMS7ソフトウェア版のインストール

PowerCMS7のソフトウェア版をインストールします。
ここでは7.1をインストールします。(バージョン番号が変更された場合には読み替えて下さい。)

(1) CGIディレクトリの配置
  • PowerCMS7のパッケージを解凍して、「/var/www/mt」に配置します。
# unzip PowerCMS7.1-Enterprise.zip
  • 「PowerCMS7.1-Enterprise」ディレクトリが作成されます。
  • この中の「mt」をCGIディレクトリに移動します。
# cd PowerCMS7.1-Enterprise
# mv mt /var/www/
(2) 「mt-static」ディレクトリの配置
  • 「mt-static」ディレクトリを公開ディレクトリに移動します。
# cd /var/www/mt
# mv mt-static /var/www/html
(3) オーナー、パーミッションの設定
ここではユーザ名を「www_user」とします。
  • 「/var/www/mt」のパーミッションを「755」にします。
# cd /var/www
# chown -R www_user:apache mt
# chmod -R 755 mt
  • 「/var/www/html」のパーミッションを「775」にします。
# cd /var/www
# chown -R www_user:apache html
# chmod -R 775 html
  • 「/var/www/html/mt-static/support」のパーミッションを「777」にします。
# cd /var/www/html
# chown -R www_user:apache mt-static
# chmod -R 775 mt-static
# cd /var/www/html/mt-static
# chmod -R 777 support
(4) Apacheの再起動
  • Apacheを再起動します。
# systemctl reload httpd.service

4. PowerCMS7用データベースの作成

PowerCMS7用のデータベースおよび専用ユーザを作成します。
ここでは、以下のようにします。
データベース名 mt_db
ユーザ名 mt_user
パスワード (任意のパスワード)
MySQL(もしくはMariaDB)にログインします。
# mysql -u root -p
データベースを作成します。
MariaDB [(none)]> CREATE DATABASE mt_db;
ユーザを作成します。
MariaDB [(none)]> CREATE USER 'mt_user'@'localhost' IDENTIFIED BY '(パスワード)';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mt_db.* TO 'mt_user'@'localhost';
データベースからログアウトします。
MariaDB [(none)]> exit

5. Perl関連モジュールのインストール

(1) cpanの初期設定
# cpan
初回は質問されます。基本的には自動設定で構いません。
Would you like to configure as much as possible automatically? [yes]
cpan[1]> quit
(2) cpanmのインストール
# cpan App::cpanminus
# cpanm --version
(3) PowerCMSに必要な基本モジュールのインストール
■CGI
# cpanm CGI
■HTML::Entities
# cpanm HTML::Entities
■File::Spec
# cpan
cpan[1]> install File::Spec
cpan[2]> quit
■CGI::Cookie
# cpanm CGI::Cookie
■Scalar::Util
# cpan
cpan[1]> install Scalar::Util
cpan[2]> quit
■LWP::UserAgent
# cpanm LWP::UserAgent
■parent
# cpan
cpan[1]> install parent
cpan[2]> quit
■Archive::Zip
# cpanm Archive::Zip
■Image::Magick
# dnf --enablerepo=epel install ImageMagick
# dnf --enablerepo=epel install ImageMagick-devel
# cpanm Image::Magick
■Imager
# cpan
cpan[1]> install Imager
cpan[2]> quit
■Digest::SHA1
# cpanm Digest::SHA1
■HTTP::Date
# cpanm HTTP::Date
■Text::CSV_XS
# cpanm Text::CSV_XS
■MIME::Parser
# cpanm MIME::Parser
■Crypt::SSLeay
# cpanm Crypt::SSLeay
■Net::SFTP
# cpan
cpan[1]> install Net::SFTP
cpan[2]> install Net::SFTP::Foreign
cpan[3]> install Net::FTPSSL
cpan[4]> quit
(4) MariaDB接続モジュールのインストール
MariaDBの開発用パッケージをインストールします。
# dnf --enablerepo=mariadb MariaDB-devel MariaDB-shared
■DBD::mysql
# cpanm DBI
# cpanm DBD::mysql
※「cpanm DBD::mysql」でインストールエラーが出る場合には最新バージョンの「DBD-mysql-5.013」ではなく「DBD-mysql-4.055」をインストールします。
# cpanm DVEEDEN/DBD-mysql-4.055.tar.gz
(5) 追加機能のインストール
インストール環境のチェックを行います。
httpd://www.example.jp/mt/mt-check.cgi
※「www.example.jp」には実際のFQDNを入力して下さい。

まだインストールされていないモジュールがあったら必要に応じてインストールします。
最終更新:2026年06月26日 10:47