Movable Type 9をインストールしてみた

April 23,2025 11:55 PM
Category:[9.0]
Tag:[MovableType]
Permalink

Movable Type 9のデベロッパープレビューが公開されていたので、インストールしてみました。

Movable Type 9 デベロッパープレビュー を公開しました

ここではMT8との管理画面の違いを紹介します。

1.ダッシュボード

サイドバーがデフォルトで非表示になりました。

(クリックで拡大)

システム管理画面へのリンクがみつからなかったのですが、ヘッダー右上の歯車アイコンに移動したようです。

検索アイコンをクリックすると、検索フォームが表示されます。

サイトアイコンをクリックすると、各サイトへのリンクが表示されます。

なお、このヘッダー部分はスクロールしても固定されているので、各メニュー共通になります。

2.サイト

サイト別管理画面でサイドバーが表示されます。

サイドバー上部にあった検索はヘッダーに移動し、「再構築」はそのまま、「サイトの表示」は「サイトを見る」に表記が変わり、「新規作成」が追加されました。

「新規作成」をクリックすると、コンテンツデータ・記事・ウェブページのサブメニューが表示されます。

赤枠のアイコンをクリックすると、サイドバーを折りたためます。

折りたたんだ状態です。

折りたたんだ状態でもサイドバー(矢印アイコン以外の部分)にマウスをポイントすると、一時的に表示されます。

サイドバー株のユーザー名や「ユーザー情報」「ドキュメント」「サインアウト」はヘッダー右端に移動しました。

ダッシュボードに戻るには、左上のMTのアイコンか、パンくずリストの家のアイコンをクリックします。

以上です。

Comments [0] | Trackbacks [0]

ansibleでハッシュの配列をチェックする方法

March 7,2025 12:03 AM
Category:[ansible]
Tag:[ansible]
Permalink

ansibleでハッシュの配列をチェックする方法を紹介します。

1.はじめに

下記の3ファイルのmd5sum値を予め用意したコンフィグに設定し、サーバ上の各ファイルのmd5sumと等しいか、チェックする必要が生じました。

ということで、ansibleでハッシュの配列をチェックする方法を紹介します。

2.やりたいこと

複数のファイルをチェックできるように、ファイル名とファイルのmd5sum値をハッシュの配列にしたいです。
ファイルのパスも動的に取得したいので、同じくハッシュの配列に含めます。

また、コンフィグはrolesディレクトリの中ではなく、分かりやすい任意の場所に配置したいです。

3.コンフィグのサンプル

前項の要望にしたがい、コンフィグは下記のようにしました。

/var/tmp/config.yml

files:
  - name: kdump
    path: /etc/sysconfig
    md5sum: e417c7b5754df7287f41b478f2200793
  - name: CentOS-Base.repo
    path: /etc/yum.repos.d
    md5sum: 447b4d2df1a36e64348bbd8b6c5b0fae
  - name: sysctl.conf
    path: /etc
    md5sum: 4bae3962eeef7d1e7c7ef39314db9fb0

"files"というハッシュキーの中に配列を作り、さらにそれぞれの配列に、

  • ファイル名
  • ファイルパス
  • md5sum値

を設定しました。

これをansibleで読み込ませるにはどうすればいいかを次項で説明します。

4.コンフィグファイルの読み込み

コンフィグファイルを読み込むには、Playbook本体(test.yml)に"vars_files"を用います。

test.yml

- hosts: test
  roles:
    - role: test
  vars_files:
    - "/var/tmp/config.yml"

これで、実行するロール内のタスクで前述のコンフィグを読み込むことができます。

5.ハッシュの配列をチェック

ハッシュの配列をチェックするには、ロール内のタスク(roles/test/tasks/main.yml)を下記のようにします。

roles/test/tasks/main.yml

- name: ファイルのmd5sum実行
  command: "md5sum {{ item.path }}/{{ iteパッケージのインストール

# rpm -Uvh https://repo.mysql.com/mysql80-community-release-el9-1.noarch.rpm
# dnf install mysql-community-server --nogpgcheckdnf install mysql-community-server --nogpgcheck
# dnf install mysql-community-devel --nogpgcheck

2.gccとmakeのインストール(Perlのビルド用)

# dnf install make gcc

3.httpd関連のインストール

# dnf install httpd httpd-tools httpd-devel

4.firewalldの停止

# systemctl status firewalld
# systemctl stop firewalld
# systemctl disable firewalld

5.httpdの常駐化

# systemctl is-enabled httpd
# systemctl enable httpd

6.mysqlのパスワード変更(赤字が初期パスワード、青字が変更後のパスワード)

# systemctl start mysqld
# grep 'temporary password' /var/log/mysqld.log
2024-11-26T12:52:05.760486Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: ei#(n;i9uf$k
mysql> ALTER USER 'root'@'localhost' identified BY 'rJOIaea%#%(JO';
Query OK, 0 rows affected (0.03 sec)

7.Perl5.38.2のビルドとインストール

インターネットからダウンロードしたPerlのアーカイブ(tar.gz)を任意のフォルダにアップロードして、コマンドを実行します。
デフォルトのPerlとは異なるディレクトリにインストールします。

# tar zxvf perl-5.38.2.tar.gz
# cd perl-5.38.2/
# ./Configure -des -Dprefix=/usr/local/perl-5.38.2./Configure -des -Dprefix=/usr/local/perl-5.38.2
# make
# make install

8.Perlのパス張り替え

Perl5.32.1から5.38.2に張り替えます。

# perl -v
This is perl 5, version 32, subversion 1 (v5.32.1) built for x86_64-linux-thread-multi
 :
# cd /usr/bincd /usr/bin
# mv perl perl--
# ln -s /usr/local/perl-5.38.2/bin/perl /usr/bin/perl
# perl -v
This is perl 5, version 38, subversion 2 (v5.38.2) built for x86_64-linux
 :

9.cpanmでPerlモジュールのインストール

MovableTypeの動作に必要なモジュールをインストールします。

# perl -MCPAN -e 'install App::cpanminus'perl -MCPAN -e 'install App::cpanminus'
 :
Would you like to configure as much as possible automatically? [yes] yes
 :
# /usr/local/perl-5.38.2/bin/cpanm HTML::Entities/usr/local/perl-5.38.2/bin/cpanm HTML::Entities
# /usr/local/perl-5.38.2/bin/cpanm DBI/usr/local/perl-5.38.2/bin/cpanm DBI
# /usr/local/perl-5.38.2/bin/cpanm DBD::mysql/usr/local/perl-5.38.2/bin/cpanm DBD::mysql

10.postfixのインストール

# dnf -y install postfixdnf -y install postfix

11.SeLinuxの無効化

エディタで/etc/selinux/configを開き、

SELINUX=enforcing

SELINUX=disabled

に変更します。

# vi /etc/selinux/config

12.メールサーバの設定

/etc/postfix/main.cfと/etc/postfix/master.cfを編集します。

詳細は「さくらのVPSに送信メールサーバを設定する方法」を参照してください。

12.httpd起動

starman起動前に通常のCGIでMovableTypeの管理画面にアクセスします。

# systemctl start httpd

13.PSGI環境構築のためのパッケージとモジュールのインストール

# dnf install perl-ExtUtils-MakeMaker
# /usr/local/perl-5.38.2/bin/cpanm/usr/local/perl-5.38.2/bin/cpanm --sudo CGI::Compile--sudo CGI::Compile
# /usr/local/perl-5.38.2/bin/cpanm --sudo CGI::CompilePlack
# /usr/local/perl-5.38.2/bin/cpanm --sudo Plack
# /usr/local/perl-5.38.2/bin/cpanm --sudo XMLRPC::Transport::HTTP::Plack

その他、
CGI::Parse::PSGI
CGI::PSGI
も必要ですが、インストールされていたので省略。
インストールされていることの確認は、モジュールのバージョン表示コマンドを実施。

# perl -MCGI::PSGI -e 'print $CGI::PSGI::VERSION . "\n";'
# perl -MCGI::Parse::PSGI -e 'print $CGI::Parse::PSGI::VERSION . "\n";'

14.httpd.conf修正

# vi /etc/httpd/conf/httpd.conf

PSGI動作のために下記のLoadModuleディレクティブを追加

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

ServerNameディレクティブにVMのIPアドレスを設定。

ServerName 192.168.56.100

一番最後に下記の内容を追加(上記のmod_proxyを設定しておかないと機能しません)。

<IfModule mod_proxy.c>
    ProxyPass        /cgi-bin/mt/ http://localhost:5000/cgi-bin/mt/
    ProxyPassReverse /cgi-bin/mt/ http://localhost:5000/cgi-bin/mt/
</IfModule>

修正後、httpdを再起動します。

# systemctl restart httpd

起動後、/etc/httpd/logs/error_logにエラーが出ていないことを確認。

私はServerNameが設定されていなかったのと、LoadModuleが設定されていないところで躓きました(error_logに表示されているのをみつけて解決)。

15.mt.pid用ディレクトリ作成

ここではMTインストールディレクトリ(/var/www/cgi-bin/mt)配下に作成します。

# mkdir -p /var/www/cgi-bin/mt/pids

16.mt-config.cgiに環境変数追加

下記の1行を追加します。

PIDFilePath /var/www/cgi-bin/mt/pids

17.starman起動

# cd /var/www/cgi-bin/mt
# starman -l 0.0.0.0:5000 --pid /var/www/cgi-bin/mt/pids/mt.pid ./mt.psgi

18.ブラウザからMT管理画面にアクセス

今回の例では、ポート番号5000番を指定して、

http://192.168.56.100:5000/cgi-bin/mt/mt.cgi

にアクセスします。

これでMT管理画面が表示されればOKです。


Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages
toto Cancer toto Malukutoto login situs toto toto macau toto 4d Malukutoto slot maxwin MALUKU TOTO situs toto Malukutoto login Maluku toto cancertoto toto depo 5k ilmu bet slot gacor malukutoto
maluku toto toto Malukutoto Malukutoto CANCER TOTO situs slot cancertoto toto CANCERTOTO ilmubet Cancertoto toto toto cancertoto
situs toto SLOT GACOR SLOT GACOR HARI INI situs toto
cancer toto malukutoto Maluku toto cancer toto CANCERTOTO SITUS SLOT GACOR MALUKU TOTO toto toto macau maluku toto slot gacor slot gacor cancer toto malukutoto situs depo 5k situs toto cancertoto cancertoto CANCER TOTO cancertoto toto toto toto 4d 4d 4d
slot gacor slot gacor slot gacor slot slot slot slot gacor hari ini slot gacor hari ini slot gacor hari ini situs slot situs slot situs slot situs slot situs slot situs slot slot slot slot slot gaocr slot gaocr slot gacor