【问题标题】:fopen works on local server but not on webserverfopen 适用于本地服务器,但不适用于网络服务器
【发布时间】:2012-11-10 13:42:51
【问题描述】:

我正在使用fopen 创建一个新文件。在我的本地服务器上它工作正常,但是在我的网络服务器(与 goDaddy 的 linux 共享主机)上我得到:

警告:fopen(invoices/qbImport519.iif) [function.fopen]:无法打开流:/home/content/c/h/i/chisled/html/tracking_admin/qbInvoices.php 中没有这样的文件或目录在第 97 行

认为这是网络服务器上的设置,我联系了 GoDaddy,他回复说我的帐户上的所有设置都正确,可以正常工作。有任何想法吗?

这是我的代码:

  $qbFile = fopen("invoices/qbImport".$Hits.".iif","ab");
  if (is_writable("invoices/qbImport".$Hits.".iif")){
    if (fwrite($qbFile,$iifWrite)){
      echo'<a href="invoices/qbImport'.$Hits.'.iif">Download Your File</a><br/>';
      else {
        echo "<p>Cannot add your entry</p>";
      }
    }
    else {
      echo "<p>The file is not writeable</p>";
    }
  fclose($qbFile);

我已经尝试了/home/content/c/h/i/chiseled/html/tracking_admin/invoicesinvoices/ 的路径。

该文件不存在,因为它基于每次递增的$hits 变量。所以由于某种原因,它无法创建新文件。我还尝试了 afopen 模式。

任何帮助都会很棒。谢谢。

【问题讨论】:

  • 你确定路径存在并且你有写权限?
  • 那么,您尝试在其中创建文件的文件夹的权限是什么?以及运行 Web 服务器的帐户是什么?
  • 路径home/content/c/h/i/chiseled/html/tracking_admin/真的存在吗? fwrite 不会为您创建目录,并且 Web 服务器必须对其具有写入权限。
  • 感谢您的快速回复。我是个白痴。我已将目录创建为“发票”而不是“发票”。我可以降低自己的声望点吗?大声笑

标签: php fopen


【解决方案1】:

我已将目录创建为“发票”而不是“发票”。直到凌晨 4 点才开始编码!

【讨论】:

    【解决方案2】:

    这是因为 Godaddy 不支持 fwrite。 godaddy 有很多限制。最好选择其他好的主机,如 bluehost、ipage。 Godaddy 在域名方面可能不错,但托管很差。即使是 wordpress 在 godaddy 中也无法完美运行。

    wordpress 的创建者 Matt Mullenweg 说 http://wordpress.org/support/topic/more-godaddy-installation-problems

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-08
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 1970-01-01
      • 2017-11-09
      相关资源
      最近更新 更多