在 FileMaker Server 浏览器管理控制台中,Web 服务器和 Web 发布引擎均处于活动状态(绿色勾号)。当我转到测试页面 ( http://localhost:16001/test/
) 并单击测试 PHP 自定义 Web 发布时,我得到了Error 22: Unknown Error
。当我尝试使用自己的 PHP 代码连接到数据库时,我得到了Communication Error: (22) The requested URL returned error: 404 Not Found - This can be due to an invalid username or password, or if the FMPHP privilege is not enabled for that user.
显然,这两条消息都无法很好地洞察问题所在。在管理控制台中,所有相关数据库(测试数据库和我自己 PHP 代码的活动数据库)都显示它们已fmwebdirect
启用PHP
。我应该在哪里查找此问题的原因?
详细信息:
FileMaker Server 14.0.4.414
Mac OS X El Capitan (10.11.1)
答案1
查看这些可能对您有帮助的步骤。 https://community.filemaker.com/message/507752#507752
根据要求,这里概述了步骤。
- 在运行 PHP API 的客户端计算机上修复此脚本:../FMP12/FileMaker/Implementation/FileMakerImpl.php
改变:
if (stristr("50", curl_error($Vd88fc6ed))) {
到:
if (stristr(curl_error($Vd88fc6ed),"50")) {
- 编辑此文件:/Library/FileMaker Server/Web Publishing/publishing-engine/php/yosemite/lib/php.ini
(我的评论:如果您运行的是 Mac OS X Yosemite,否则请找到与您的操作系统匹配的文件夹)
改成
default_socket_timeout = 60
:default_socket_timeout = 120
改成
max_execution_time = 30
:max_execution_time = 90
改成
max_input_time = 60
:max_input_time = 120
改成
session.cache_expire = 30
:session.cache_expire = 180
编辑此文件:/Library/FileMaker Server/Admin/admin-helper/WEB-INF/conf/mod_proxy.conf 实际上没有编辑,但请记住此文件以备将来使用。
编辑此文件:/Library/FileMaker Server/HTTPServer/conf/extra/httpd-proxy.conf 在结束标记后添加此语句
</Proxy>
:代理超时 180
- 编辑此文件:/Library/FileMaker Server/HTTPServer/conf/httpd.conf
在所有 LoadModule 语句之后添加这些语句:
Timeout 180 KeepAlive On MaxKeepAliveRequests 200 KeepAliveTimeout 30
- 重新启动 apache 服务器
cd "/Library/FileMaker Server/HTTPServer/bin"
sudo ./httpdctl graceful