ONLYOFFICE’s diary

OSSドキュメントエディタの使い方やヒントをご紹介します

ONLYOFFICEをPHPのサイトに組み込む方法

概要

この例は、ONLYOFFICE DocsをPHPで書かれたあなたのウェブアプリケーションに統合するのをご紹介します。

統合の例は、ドキュメントエディターの機能と、ドキュメントサーバーをあなたのアプリケーションに接続する方法を示すために使用されます。適切なコードの変更なしに、これらの例をあなた自身のサーバで使用しないでください! もし、テスト用のサンプルを有効にした場合は、本番環境へ移行する前にそれを無効にしてください。

重要なセキュリティ情報

テスト例を使用する際には、以下のセキュリティ面に留意してください。

  • 認証の必要がないため、不正なアクセスからストレージを保護することはできません。
  • パラメータはあらかじめ用意されたスクリプトに従ってコードによって生成されるので、リンクのパラメータ置換に対するチェックは行われません。
  • 各テスト例はONLYOFFICE Document Serverからの要求のみを想定しているため、編集後のファイル保存要求におけるデータチェックはありません。
  • ドメインのONLYOFFICE Document Serverとの連携を想定しているため、他サイトのテスト例の利用を禁止するものではございません。

Windowsの場合

ステップ1.ONLYOFFICE Docsのインストール

ONLYOFFICE Docs(Document Serverとしてパッケージ化されています)をダウンロードし、インストールします。

Windows版Document Serverのインストール方法は、詳細ガイドをご覧ください。

ステップ2. エディタ統合のためのPHPコードをダウンロードする

弊社サイトよりPHPサンプルコードをダウンロードします。

エディタをウェブサイトに接続するために、config.phpファイルにエディタのインストール先パスとストレージフォルダへのパスを指定します。

$GLOBALS['STORAGE_PATH'] = "";
$GLOBALS['DOC_SERV_SITE_URL'] = "https://documentserver/";

ここで、documentserverはONLYOFFICE Document Serverがインストールされているサーバー名、STORAGE_PATHはファイルが作成・保存されるパスです。絶対パスを設定することができます。例えば、D:↵フォルダーなどです。Windows OSでは、セパレータとしてダブルバックスラッシュを使用する必要がありますので、ご注意ください。

もしエディタの設定を試したい場合は、doceditor.phpファイル内のパラメータを変更してください。

ステップ3. 前提条件をインストールする

サンプルの実行には、PHPコードを実行できる任意のWebサーバーを使用することができます。ここでは、インターネットインフォメーションサービス (IIS) のウェブサーバーを使用して PHP サンプルを実行する方法を説明します。IIS 上で PHP を設定するには、PHP Manager for IIS を使用します。

ステップ4.IIS の設定

1.PHP Manager for IIS の設定を行います。

PHP Manager for IIS のインストールが完了したら、IIS マネージャを起動します。

スタート -> コントロールパネル -> システムとセキュリティ -> 管理ツール -> インターネットインフォメーションサービス (IIS) マネージャー

を起動し、IIS の Features View で PHP Manager 機能を探します。

https://api.onlyoffice.com/content/img/php/manager.png

インストールしたPHPのバージョンをIISに登録するには、PHP Managerを使用する必要があります。

PHP Manager をダブルクリックして開き、 新しい PHP バージョンの登録 タスクをクリックして、メインの PHP 実行ファイルの場所へのフルパスを指定します。例えば C:\Program Files\PHP\php-cgi.exe。

https://api.onlyoffice.com/content/img/php/php-version-1.jpg

OKをクリックすると、新しいバージョンのPHPIISに登録され、アクティブになります。

https://api.onlyoffice.com/content/img/php/php-version-2.jpg

2.PHP リクエストを処理するように IIS を設定する

IISPHP アプリケーションをホストするには、 PHP 固有のすべてのリクエストを FastCGI プロトコルを使って PHP アプリケーションフレームワークに渡すようにするハンドラマッピングを追加する必要があります。

ハンドラーマッピング機能をダブルクリックします。

https://api.onlyoffice.com/content/img/php/handlerclick.png

アクションパネルで、Add Module Mapping をクリックします。Add Module Mappingダイアログボックスで、以下のようにコンフィギュレーション設定を指定します。

  • リクエストパス *.php
  • モジュール FastCgiModule
  • 実行可能「C:[Path to your PHP installation]\php-cgi.exe"
  • 名前 PHP via FastCGI

OKをクリックします。

https://api.onlyoffice.com/content/img/php/handler-add.png

IIS マネージャーの設定が完了したら、PHP のサンプルを実行するための準備がすべて整いました。

ステップ 5. エディターでウェブサイトを実行する

1.IIS マネージャーに Web サイトを追加します。

接続]パネルで、ツリーの「サイト」ノードを右クリックし、「ウェブサイトの追加」をクリックします。

https://api.onlyoffice.com/content/img/csharp/add.png

2.ウェブサイトの追加 ダイアログボックスで、サイト名 ボックスに PHP プロジェクトを格納したフォルダの名前を指定します。

物理パスボックスに、プロジェクトがあるフォルダのパスを指定します。

「ポート」ボックスに、このWebサイトのみに使用する一意の値を指定します。

https://api.onlyoffice.com/content/img/editor/php-add.png

3.IISマネージャでWebサイトを閲覧します。

サイトを右クリック -> ウェブサイトの管理 -> ブラウズ

https://api.onlyoffice.com/content/img/php/browse.png

ステップ6. アクセス可能か確認する

サンプルとドキュメントサーバーが異なるコンピュータにインストールされている場合、サンプルをインストールしたサーバーが、documentserver設定ファイルの代わりに指定したアドレスでドキュメントサーバーにアクセスできることを確認します。ドキュメントサーバーが、設定ファイルのexample.comの代わりに指定したアドレスで、exampleをインストールしたサーバーにアクセスできることを確認してください。

エディタが正常に統合されると、当サイトのデモ・プレビューのようになるはずです。

Linuxの場合

ステップ1. ONLYOFFICE Docsをインストールする

ONLYOFFICE Docs(Document Serverとしてパッケージ化されています)をダウンロードし、インストールします。

Document Server for Linuxのインストール方法については、詳細ガイドをご覧ください。

ステップ2. 前提条件をインストールし、エディタでウェブサイトを実行する

1.ApachePHPをインストールします。

apt-get install -y apache2 php7.0 libapache2-mod-php7.0

2.PHPのサンプルが入ったアーカイブをダウンロードし、アーカイブを解凍してください。

cd /var/www/html
wget https://api.onlyoffice.com/app_data/editor/PHP%20Example.zip
unzip PHP\ Example.zip

3.プロジェクトディレクトリのカレントディレクトリを変更します。

cd PHP\ Example/

4.設定ファイルconfig.phpを編集します。ONLYOFFICE Document Serverがインストールされているローカルサーバ名を指定します。

nano config.php

以下の行を編集してください。

$GLOBALS['STORAGE_PATH'] = "";
$GLOBALS['DOC_SERV_SITE_URL'] = "https://documentserver/";

ここで、documentserverはONLYOFFICE Document Serverがインストールされているサーバー名、STORAGE_PATHはファイルが作成・保存されるパスです。絶対パスを設定することができます。

5.サイトのパーミッションを設定します。

chown -R www-data:www-data /var/www/html

6.apacheを再起動します。

service apache2 restart

7.アドレスを使って、ブラウザで結果をご覧ください。

http://localhost/PHP%20Example/

ステップ3. アクセス可能か確認する

サンプルとドキュメントサーバーが異なるコンピュータにインストールされている場合、サンプルをインストールしたサーバーが、設定ファイルのドキュメントサーバーの代わりに指定したアドレスでドキュメントサーバーにアクセスできることを確認します。ドキュメントサーバーが、設定ファイルのexample.comの代わりに指定したアドレスで、exampleをインストールしたサーバーにアクセスできることを確認してください。

エディタが正常に統合されると、私たちのサイトにあるデモのプレビューのようになるはずです。