PHP Laravel 集成
PHP Laravel 集成示例是一个小型 Laravel 应用程序,它可以列出文件、在 ONLYOFFICE 文档中打开文件,并通过回调处理程序将其保存回来。它的 Docker 配置还会启动 ONLYOFFICE 文档,因此在编写您自己的集成之前,您可以看到一个完整可用的集成。
警告
本示例仅用于测试。它没有身份验证,不检查链接参数和保存请求,并接受来自任何网站的请求,因此任何能够访问它的人都可以读取和修改其中的文件。请勿在公共服务器上运行此示例,并在投入生产环境之前将其禁用。
先决条件
- Docker 和 Docker Compose:请参阅官方网站。
- Git:请参阅官方网站。
- ONLYOFFICE 文档:可选,因为 Docker 配置会启动自己的 ONLYOFFICE 文档。如需使用您自己的服务器,请获取自托管版或云版。
步骤 1. 下载示例
克隆示例仓库,进入 PHP Laravel 示例目录,并获取其子模块:
git clone --depth 1 https://github.com/ONLYOFFICE/document-server-integration
cd document-server-integration/web/documentserver-example/php-laravel
git submodule update --init --depth 1 .
步骤 2. 配置连接
根据模板创建 .env 文件:
cp .env.example .env
默认值可直接使用:Docker Compose 会在示例旁启动 ONLYOFFICE 文档,并向其传递相同的 JWT 密钥。如需改为连接您自己的 ONLYOFFICE 文档服务器,请编辑 .env 中的以下变量:
DOCUMENT_SERVER_PUBLIC_URL=http://localhost:8080
DOCUMENT_SERVER_PRIVATE_URL=http://proxy:8080
DOCUMENT_STORAGE_PRIVATE_URL=http://proxy
DOCUMENT_SERVER_JWT_SECRET=secret
DOCUMENT_SERVER_PUBLIC_URL和DOCUMENT_SERVER_PRIVATE_URL:您的 ONLYOFFICE 文档服务器的地址。DOCUMENT_STORAGE_PRIVATE_URL:ONLYOFFICE 文档访问示例时使用的地址。名称proxy只能在 Docker 网络内部解析。DOCUMENT_SERVER_JWT_SECRET:您服务器的密钥。
如果您想尝试配置编辑器,请修改 app/Models/Editor/Editor.php 文件中的参数。
步骤 3. 构建并运行示例
docker compose up -d --build
在浏览器中打开 http://localhost。您将看到示例的起始页面,可以在其中上传文件,或者新建文档、电子表格、演示文稿或 PDF 表单。
示例的文件(包括 .env)会在首次启动时复制到 Docker 卷中。修改这些文件后,请运行 docker compose down -v,然后重新启动示例。
故障排除
- 文档安全令牌的格式不正确:示例中未启用 JWT(
DOCUMENT_SERVER_JWT_SECRET为空),或者DOCUMENT_SERVER_JWT_SECRET与 ONLYOFFICE 文档的密钥不一致。如果您在首次启动后修改了该值,请使用docker compose down -v重新创建卷。 - 下载失败:ONLYOFFICE 文档无法访问示例。请在
.env中将DOCUMENT_STORAGE_PRIVATE_URL设置为 ONLYOFFICE 文档可以解析的地址。 - Laravel 安装或配置问题:请参阅 Laravel 文档。