Debian 11 で NetCommons 3

あけましておめでとうございます。

今年も、よろしくお願いいたします。


年末年始で、最近ホストしているサイトを全て CentOS から Debian 11 に移行完了しました。

その過程で、NetCommons3 を移行した時のメモです。


ただし、バージョンはちょっと古いです。

バージョンアップしても良いのですが、タイミングによっては事故りそうなので。。。💦


ということで、環境

・Debian 11

・MariaDB 15 Server

IP: 10.0.1.2

# mysql --version

mysql  Ver 15.1 Distrib 10.5.18-MariaDB, for debian-linux-gnu (x86_64) using  EditLine wrapper

・NetCommons 3 (Web Server)

IP: 10.0.3.2

NetCommons-3.2.2

 ※GatewayやReverse Proxyサーバとかもありますが、その辺りは適当に設定。


設定とか作業内容は下記

■MariaDB

●インストール

apt-get -y install mariadb-server

●設定

1.bind 設定(NetCommons 3 と違うホストにある場合)

vi /etc/mysql/mariadb.conf.d/50-server.cnf

#bind-address            = 127.0.0.1

bind-address            = 10.0.1.2 

systemctl restart mariadb

2.初期化

mysql_secure_installation


3.phpMyAdmin

apt-get -y install apache2 php php-cgi php-common php-mbstring libapache2-mod-php

a2enconf php7.4-cgi


apt-get -y install phpmyadmin

※以降、サーバー設定等は画面の指示に従う

※ユーザやDBの追加をする(今回は、ユーザとDBを追加。パスワードを忘れないようにしましょう)


4.DB環境設定

select @@GLOBAL.sql_mode

↑で現在の設定を確認。

STRICT_TRANS_TABLESがあれば、削除して↓のように再設定

set GLOBAL sql_mode = 'ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

5.DB複製(移行タイミングを決めてからのほうが良いかも?)

元々あったDBのデータをテーブル構造ごと複製する

mysqldump -h OriginalDbHostIP --user=DBUser -pDBUserPassword --databases BackupDatabaseName --single-transaction > dump.sql

mysql -h localhost -u DBUser -pDBUserPassword --databases RestoreDatabaseName < dump.sql


 ■NetCommons 3

●インストール

apt-get install -y apache2 curl vim php php-mysql php-gd php-mbstring php-xml unzip


●設定

1.モジュール設定

a2enmod cgi rewrite

systemctl restart apache2

2.初期サイト設定を削除 

a2dissite 000-default
systemctl restart apache2

3.サイト設定
vi /etc/apache2/sites-available/netcommons.conf
<VirtualHost *:80>
    ServerName <NetCommons3 Server Name>
    DocumentRoot /var/www/html/NetCommons3/

    <Directory "/var/www/html/NetCommons3/">
        Options Indexes FollowSymLinks ExecCGI
        AddHandler cgi-script .php
        DirectoryIndex index.php index.html
        AllowOverride All
    </Directory>

</VirtualHost>

4.適用
a2ensite netcommons
systemctl reload apache2

5.PHP設定
vi /etc/php/7.4/apache2/php.ini
; post_max_size = 8M
post_max_size = 100M

  

; upload_max_filesize = 2M
upload_max_filesize = 50M

6.NetCommons 3コピー

ディレクトリ移動

cd /var/www/html/

元サイトからコピー 

ssh -l root OriginalWebServerIP 'cd /var/www/html/;tar zcf - NetCommons3' | tar zxf -

調査とかで弄っていてわからなくなったら下記でプログラム部分を上書き 

curl -L -o NetCommons-3.2.2.zip https://www.netcommons.org/cabinets/cabinet_files/download/50/30f5738db7a333a2408ef92bffd3b60e?frame_id=63

unzip -o NetCommons-3.2.2.zip && chown -R www-data:www-data /var/www/html/NetCommons3/

systemctl reload apache2

7.DBホスト設定

vi /etc/hosts

10.0.1.2 MariaDB.Server.FQDN MariaDB.Server

8.環境差分修正

vi /var/www/html/NetCommons3/app/webroot/index.php

※CAKE_CORE_INCLUDE_PATH を定義している部分を全て確認し、下記のように修正する

define('CAKE_CORE_INCLUDE_PATH', ROOT . DS . 'vendors' . DS . 'cakephp' . DS . 'cakephp' . DS . 'lib');


vi /var/www/html/NetCommons3/app/Plugin/Migrations/Lib/CakeMigration.php

#class CakeMigration extends Object {
class CakeMigration extends CakeObject {

 

コメント

このブログの人気の投稿

【解決】YogaBook が再起動を繰り返す

XCP-ngを触ってみて

Hyper-V上にXCP-ng(xen環境)をインストール