我切换了托管服务提供商,现在遇到了以下问题。
函数imagecreatefromjpeg()
正在尝试从其URL路径(http://mydomain.com/contents/category/certificate/1/template.jpg)读取文件。此功能正在进行旧设置,但在较新的设置中失败并出现以下错误。
(104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
Premature end of script headers: index.php
一旦我用相同文件的绝对路径替换了URL路径,问题就消失了。
我能看到的差异是
我们尝试了很多东西,但无法理解如何使URL路径适用于较新的设置。有人可以帮忙吗?
答案 0 :(得分:1)
您确定相应地配置了nginx网络服务器吗?这里有一些很好的教程可以解释一些更相关的nginx和php fastcgi进程管理器常见的陷阱:
Ars Technica: Web Served part 3: Installing PHP Fastcgi Process Manager
我链接了这些资源,因为您似乎错误配置了重写引擎。无论如何,请提供更好的背景信息!
答案 1 :(得分:0)
尝试通过函数
更改网址“http://mydomain.com/” function selfURL(){
$server1 = $_SERVER['HTTPS'];
$server2 = $_SERVER['SERVER_PROTOCOL'];
$server3 = $_SERVER['SERVER_PORT'];
$server4 = $_SERVER['SERVER_NAME'];
$s = empty($server1) ? '' : ($server1 == "on") ? "s" : "";
$protocol = strleft(strtolower($server2), "/").$s;
$port = ($server3 == "80") ? "" : (":".$server3);
return $protocol."://".$server4.$port;
}
function strleft($s1, $s2){
return substr($s1, 0, strpos($s1, $s2));
}
print(selfURL());
如果没有使用
,你可以替换'$ port'答案 2 :(得分:0)
当我运行cron时,我在服务器上遇到此问题。
这是基于类似主题我可以说的。
1)页面加载类似〜/.
2)您引用位于〜/../ private / hello / derp.php
的另一页3)在derp.php里面,假设您正在运行〜/../ private / hello /.'
文件4)实际上你从〜/。
运行它5)文件引用错误,因为PWD错误。
我的东西很难找出来,但当我深入研究它时,我重新尝试加载来自〜/../ private / hello / images / hi.jpg之类的东西实际上因为PWD,它正在查看〜/ images / hi.jpg,它们并不存在。
也许这会对你有所帮助。我希望如此。
编辑你也想知道很多时间,〜/。因为你可以和〜/不同。 PUBLIC。这也是需要注意的事项。
尝试通过bash脚本正确使用终端变量。