PowerPoint 2024ダウンロード版のライセンス認証手順
PowerPoint 2024インストール版(サブスクではない)をAmazonで購入しました。
Amazonで購入すると、ライセンスキーと併せて下記の手順が送られてきます。
- www.office.com/setup/ にアクセスします。
- 指示に従い、25桁のプロダクトキーを入力します。
- ご利用したい Microsoft アカウントでサインインします。Microsoft アカウントをお持ちでない場合は、作成してください。
- Windows PC または Mac に Office アプリをダウンロードしてください。
上記ののダウンロードからインストールまでは割と楽に手順を踏めたのですが、PowerPoint初回起動後のライセンス認証がわかりにくかったので、キャプチャできた画面を使って紹介します。
初回起動すると操作は行えず、下記のダイアログが表示されるので「Microsoft365を購入」をクリックしてみます。
Microsoft365購入画面が表示されるだけなので閉じます。
この間の操作を忘れてしまったのですが、再び何かのダイアログが表示され、サブスクの誘惑に屈することなく操作をしていたら下記の画面が出たので、「プロダクトキーを所有している場合」をクリック。
キャプチャしていませんが、このあとプロダクトキー入力画面が出たので、プロダクトキーを入力すると下の画面が表示されたので、再度「プロダクトキーを所有している場合」をクリック。
このあと再度プロダクトキー入力画面が出たので、プロダクトキーを入力すると、このライセンス認証画面が出たので、メールアドレスを入力(プロダクトキーを入力した方がよかったかもしれません)。
これでライセンス契約同意画面が表示されるので「同意する」をクリック。
このあとも使用可能になる前の設定が表示されますが、たいした問題ではないので省略。
うっかりすると間違えてサブスクリプション購入してしまうので、ダウンロード版を購入された場合はサブスクリプション契約しないよう、注意しましょう。
CentOS9 + Perl5.38.2でPSGI環境を構築する方法
この記事は「Movable Type Advent Calendar 2024」の7日目の記事です。
CentOS9 + Perl5.38.2でPSGI環境を構築する方法を紹介します。
CentOS9のVMを作成すると、Perlはデフォルトで5.32.1になりますが、5.38.2を個別にビルドします。
また、MovableType(PSGI)の利用を前提としてウェブサーバーとして動作できるまでの手順も併せて紹介します。
動作確認にはVirtualBoxを使用しています。
1.mysql関連パッケージのインストール
# 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です。
「MTDDC Meetup Tokyo 2024」の発表スライド
2024年11月23日、「MTDDC Meetup Tokyo 2024」が開催され、久しぶりに登壇させて頂きました。
今回は「プラグインよもやま話」というタイトルでお話ししました。
内容は各種プラグインの作り方がメインで、Perlやプログラムがわからない人でも理解できる程度のサンプルを使って、わかりやすくしているつもりです。
実例がないとわかりにくいものは、リリースしているプラグインを抜粋しています。
また、私自身、プラグインをなんとなく先人達のマネをして作ってきたので、
- 定義ファイル名が「config.yaml」なのはなぜだろう?
- ハンドラの先頭に"$"を付与するのはなぜだろう?
- クラスファイルをlibディレクトリ配下に配置するのはなぜだろう?
- プラグインはどうやって登録されるんだろう?
- コールバックの仕組みはどうなっているんだろう?
といった疑問にも取り組んでみました。
ということで、そのときの発表スライド(PDF)を公開しておきます。
当日発表用にレイアウトを全体的に少し上にずらしているので、修正したら差し替えます。
約200ページあります。目次は次の通りです。
- 自己紹介
- プラグイン基礎
- mt.cgiの仕組み
- プラグインが登録される仕組み
- 各種プラグインの定義と実装
- コールバック
- テンプレートタグ
- グローバルモディファイア
- テンプレート
- トランスフォーマー
- メニュー
- リスティング・リストアクション
- ウィジェット
- パーミッション
- スケジュールタスク
- DataAPI
- オーバーライド
- ローカライズ
- プラグインデータ・プラグイン設定
- アプリケーション
- データベースにテーブル・フィールド追加
- プラグイン資材
- デバグ
- ノウハウ
- パフォーマンス
- 失敗談
- プラグイン・プラグイン開発関連サイト