2015-12-25 73 views
1

我已经在我的linux服务器上为php设置了TesseractOCR。当我从命令行执行代码时,图像被识别,但当我从Web浏览器运行相同的脚本时,我得到空白页面。PHP TesseractOCR只能在命令行工作

任何想法如何使这项工作在网络浏览器也?

+2

检查您的网络服务器日志。可能有权限或缺少模块。也出现错误报告和显示 –

+0

我得到这个错误:file_get_contents(./ my-temp-dir/231903195.txt):无法打开流:在/ var/www/html/ocr/TesseractOCR/TesseractOCR中没有这样的文件或目录236线上的.php – AXheladini

+1

那就是你的问题。从来没有使用过tesseract,所以不知道如何解决它,但它可能是一个配置设置,或者你可以尝试创建我的临时为 –

回答

1

经过超过10小时的努力我固定由doint下列步骤操作:

这就是我所做的。

  1. 在var/www/html目录下创建一个新目录dir设置root和www作为目录的所有者。
  2. 复制了所有的应用程序文件复制到新的目录,并重新设置每个文件到www和根
  3. 搭配chmod 775临时-dir的所有权和目录,文件模式775 TesseractOCR/TesseractOCR.php
  4. 将此代码添加

$ path = getenv('PATH'); putenv(“PATH = $ path:/ usr/local/bin”);

右后

require_once “TesseractOCR/TesseractOCR.php”;

谢谢

+0

嗨我已遵循你的解决方案,但没有工作。你能否更详细地解释这一行“每个文件的所有权和dir到www和root”。 这对我来说非常紧迫。我正在等待您的回复。 – mohit

+0

嗨问题全部与目录权限相关,您需要为所有目录设置正确的权限并将其分配给正确的用户组。 – AXheladini

+0

我已经给了正确的传教士..顺便说一下,我已经成功安装在另一台服务器上..感谢您的帮助 – mohit

0

只有一件事情要做。需要设置环境变量。

For Example : PATH=$path:/usr/local/bin