php shell_exec() 通过 cygwin

发布于 2024-07-11 10:24:31 字数 592 浏览 6 评论 0 原文

我编写了一个通过 pdftex 编译 LaTeX 代码的脚本。 问题是 pdftex 只能在 Linux 上运行。

我使用 shell_exec() 来完成此任务。

我真的没有能力将 Linux 盒子设置为网络服务器。 我有我的客户端计算机,但它位于我无法控制的防火墙后面。 我确实可以控制我的工作服务器,该服务器运行 SBS 2003,并带有运行 apache 和 php 的 Windows 2000 虚拟机。 据我所知,您无法在 Windows 中安装 pdftex,即使可以安装,它也无法与 shell_exec() 一起使用。

有没有办法用 cygwin 解决这个问题? 我可以在 cygwin 中安装 pdftex,然后配置 php 以在 cygwin 内运行 shell_exec() 命令。 如果这是可能的,有人可以指出我正确的方向吗?

另外,我想知道是否还有其他行动方案。 我不介意购买托管,但任何共享托管计划都不会支持该应用程序。 它必须是虚拟或专用托管计划; 我买不起的东西。

I wrote a script that compiles LaTeX code through pdftex. The trouble is that pdftex only runs on linux.

I am accomplishing this task with the use of shell_exec().

I don’t really have the ability to set up a linux box as a web server. I have my client computer, but it is behind a firewall that I do not control. I do have control of my work server which is running SBS 2003 with a Windows 2000 virtual machine running apache and php. To my knowledge, you can’t install pdftex in Windows, and if you could it wouldn’t work with shell_exec().

Is there way to work around this with cygwin? I could install pdftex in cygwin, and then configure php to run shell_exec() commands inside of cygwin. If this is possible, could somebody point me in the right direction?

Also, I wonder if there is another course of action. I wouldn’t mind buying hosting, but any shared hosting plan isn’t going to support the app. It would have to be a virtual or dedicated hosting plan; something I can’t afford.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

落在眉间の轻吻 2024-07-18 10:24:31

对于任何想知道如何通过 Cygwin 运行 shell_exec() 的人,请查看 PHP 手册中评论的链接:

http://us.php.net/manual/en/function.shell-exec.php#68647

 $result = shell_exec("C:\cygwin\bin\bash.exe --login  -c '/cygdrive/c/cygwin/bin/convert.exe --version'");

关键是“--login”选项,它附加了所有必需的常见信息
cygwin 二进制文件和库路径到 $PATH。 如果没有此选项,某些
链接到其他库的 cygwin 二进制文件(如 ImageMagick
链接到 X11 的二进制文件将不起作用,您可能会看到错误
例如“未找到 cygX11-6.dll,无法启动 Convert.exe”

For anyone who is wondering about running shell_exec() through Cygwin, check out this link to a comment in the PHP manual:

http://us.php.net/manual/en/function.shell-exec.php#68647

 $result = shell_exec("C:\cygwin\bin\bash.exe --login  -c '/cygdrive/c/cygwin/bin/convert.exe --version'");

The key is the "--login" option which appends all the required common
cygwin binary and library paths to $PATH. Without this option some of
the cygwin binaries that links to other libraries ( Like ImageMagick
binaries which links to X11 ) will not work and you may see errors
like "cygX11-6.dll not found, Could not start convert.exe"

爱本泡沫多脆弱 2024-07-18 10:24:31

pdfTeX 在 Windows 上运行得很好,不需要 Cygwin。 尝试 MiKTeX

pdfTeX runs just fine on Windows, without requiring Cygwin. Try MiKTeX.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文