所以我使用TCPDF生成pdf文件并尝试使用
将生成的文档保存在驻留在另一台服务器上的文件夹中$pdf->Output('\\\210.24.39.6\salesorder\salesorder.pdf', 'F');
我收到了错误
警告:fopen():不支持远程主机文件访问,
我可以从服务器计算机远程访问路径和文件夹。有谁知道为什么?
答案 0 :(得分:1)
您可以将共享作为驱动器安装在Windows上或安装在Linux服务器上的文件夹中,而不是像本地文件系统一样使用它。
对于Windows:
net use \\210.24.39.6\salesorder\
对于linux(不要忘记创建文件夹销售订单):
mount –t cifs 210.24.39.6:/salesorder /fullpath/salesorder –o username=test,workgroup=test
答案 1 :(得分:0)
答案 2 :(得分:0)
除了scp(这是一个不错的选择)之外,另一个选项是在本地生成PDF,然后将其复制到IP或UNC名称。我使用的实现如下:
1)生成pdf到本地驱动器。 (无论您身在何处)
$pdf->Output($filename, 'F');
2)使用内置的php函数将文件复制到远程驱动器。我建立了一个函数来执行此操作,因为我还想进行一些检查,以确保它可以继续进行而不会出错。
function CheckDirectoryExists($path) {
if (!file_exists($path)) {
mkdir($path, 0777, true);
}
return file_exists($path);
}
function CopyFile($file, $to_file) {
if (!file_exists($file)) {
return -1;
}
if (!file_exists($to_file)) {
$path = '';
$explodedPath = explode(dirSep, $to_file);
for ($i = 0; $i < (sizeof($explodedPath) - 1); $i++) {
$path .= $explodedPath[$i] . dirSep;
}
CheckDirectoryExists($path);
} else {
unlink($to_file);
}
return copy($file, $to_file);
}
这应该起作用,我在设置的init.php中使用了UNC名称而不是IP地址。