MacOS
以下の説明は、MacOS MojaveにTAOをインストールするためのものです。
以下の説明は、MacOS Mojaveで、作業ディレクトリとDocumentRootに/Users//taoを使用しています。異なるOSバージョン、ディレクトリの場所、DocumentRootを選択した場合は、適切にこれらのパスを調整する必要があります。ここでは、コマンドラインにアクセスできることを前提に説明しています。
サーバーの準備
http、php、mariadbなどの様々なソフトウェアパッケージをインストールするために、まだBrewをインストールしていなければ、システムにBrewをインストールする必要があります。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
ブリューのインストールを確認します。
brew --version
brew doctor
TAOをインストールするために、wget、composer、gitをインストールします。
brew install wget composer git
PHP 7.2のインストールと起動
brew install php@7.2
php -v
brew services start php
Apacheの設定
MAcOS MojaveにはデフォルトのApache2が搭載されているので、独自のApacheをインストールするためには、それを停止してデインストールする必要があります。
sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null
これで、httpdのインストールと起動の準備が整いました。
brew install httpd
brew services start httpd
お好みのエディタを使用して、Apacheを設定する必要があります。バーチャルホストを使用している場合は、こちら(https://httpd.apache.org/docs/2.4/vhosts/examples.html)にあるApacheの説明に従う必要があります。
nano /usr/local/etc/httpd/httpd.conf
ポートを80 vs 8080に設定します。
#Listen 8080
Listen 80
Configure ServerName:
ServerName <hostname or IP>
ユーザーとグループを設定します:
User <user>
Group <group>
DocumentRootとconfigureディレクトリを変更する。
DocumentRoot /Users/<user>/tao
<Directory /Users/<user>/tao>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
mod_rewrite および php@7.2 モジュールを使用するように Apache を設定する必要があります。
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
LoadModule php7_module /usr/local/opt/php@7.2/lib/httpd/modules/libphp7.so
また、index.phpが最初に来るようにdir_moduleセクションを編集して、PHPページを最初に提供するようにApacheを設定したい。
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
MariaDBの設定
データベースにはMariaDBを使用します。MariaDBはbrewでインストールします。
brew install mariadb
brew services start mariadb
この時点でデータベースにログインして、必要に応じてTAOをインストールするための新しいユーザーやデータベースを作成することができます。また、この時点でログインを保護することもできます。
TAOのデータベースとユーザーを新規に作成します。
mysql
create database <database>;
create user '<user>'@'localhost' identified by '<password>';
grant all privileges on <database>.* to '<user>@'localhost' with grant option;
flush privileges;
quit
TAOのインストール
ウェブサイトまたはGitHubから「Tao Package」をダウンロードし、インストールの準備をします。
wget https://releases.taotesting.com/TAO_3.3.0-RC2_build.zip
unzip TAO_3.3.0-RC2_build.zip
sudo mv TAO_3.3.0-RC2_build /Users/<user>/tao
また、Gitを使ってGitHubから最新のリリースを直接ダウンロードすることもできます。
git clone https://github.com/oat-sa/package-tao.git /Users/<user>/tao
cd /Users/<user>/tao
git checkout release-3.3-rc02
Apacheの設定を確認し、Apacheを再起動する。
apachectl configtest
brew services restart httpd
正しいバージョンのcomposerが使われているか確認します。デフォルトでは、MacOSにインストールされているcomposerのバージョンはcomposer 2です。TAOをインストールする前に、以下のコマンドでバージョン1にダウングレードする必要があります。
sudo composer self-update --1
composerを使ってTAOのコンポーネントをサーバーにインストールし、新しく作成されたtaoディレクトリの所有権をApacheユーザーに変更します。
cd /Users/<user>/tao
composer install
必要に応じて、MathJaxをサーバーにインストールします。
sudo wget --no-check-certificate https://hub.taotesting.com/resources/taohub-articles/articles/third-party/MathJax_Install_TAO_3x.sh
sudo chmod u+x MathJax_Install_TAO_3x.sh
sudo ./MathJax_Install_TAO_3x.sh
これで、次のコマンドを使ってコマンドラインでインストールを完了することができます。
sudo -u www-data php tao/scripts/taoInstall.php \
--db_driver pdo_mysql \
--db_host localhost \
--db_name <db_name> \
--db_user <user> \
--db_pass <password>\
--module_namespace http://<hostname or IP>/first.rdf \
--module_url http://<hostname or IP> \
--user_login <user> \
--user_pass <password> \
-e taoCe
その場合、あなたのTAOインスタンスは、次の場所で利用できます。
http://<hostname or IP>
または、ブラウザにTAOをインストールするには、次のようにします。 http://<hostname or IP>
上記の指示に従っている場合はお使いのApacheの設定が上記の指示に従っていない場合は、適切にURLを調整する必要があります。