【发布时间】:2015-09-24 00:02:45
【问题描述】:
我正在尝试使用一些 ajax 来发送一些电子邮件。我在使用冷聚变之前已经这样做了,没有问题。
我遇到的是 localhost 没有找到目录中明显存在的文件。实际上,该文件与 index.php 位于同一目录中,这没有问题。但是,它在我的 send.php 文件中给了我一个 404 错误文件未找到。我什至尝试通过地址栏直接进入该页面,但找不到该文件。 如果我输入文件路径,即 - file:///C://xampp/htdocs/3H-Web-Wlements/send.php,它将显示代码。
但是,当我上传到我的活动服务器时,它没有问题。
我在这里错过了什么?
这是日志中的错误: [2015 年 9 月 23 日星期三 19:33:34.295785] [:error] [pid 2552:tid 1752] [client ::1:63670] 找不到脚本'C:/xampp/htdocs/index.php'或无法统计,推荐人:http://localhost/3H-Web-Wlements/
我是否有配置错误甚至未配置的内容?
就像我说的。它适用于我的活动服务器,但仅在本地主机上失败。
我的 send.php 代码
<?php
/*
**************************************
* *
* Config here *
* *
**************************************
*/
$to = 'xxx@gmail.com';
$subject = 'Message from website';
$siteName = "xxx";
/*
*************************************************************
* *
* Don't Change below code, if you don't know php. *
* *
*************************************************************
*/
$name = $_POST['contactName'];
$mail = $_POST['contactEmail'];
$subject = $_POST['contactWebsite'];
$note = $_POST['contactMessage'];
$ipAdd = $_POST['contactIp'];
if (isset($name) && isset($mail) && isset($note)) {
// $mailSub = '[Contact] [' . $siteName . '] '.$subject;
$body = 'Sender Name: ' . $name . "\n\n";
$body .= 'Sender IP: ' . $ipAdd . "\n\n";
$body .= 'Sender Mail: ' . $mail . "\n\n";
$body .= 'Website: ' . $subject . "\n\n";
$body .= 'Message: ' . $note;
$message = $body;
$header = 'From: ' . $mail . "\r\n";
$header .= 'Reply-To: ' . $mail . "\r\n";
$header .= 'X-Mailer: PHP/' . phpversion();
// mail($to, $mailSub, $body, $header);
mail($to, $subject, $message, $headers);
}else{
echo '0';
}
?>
【问题讨论】:
-
当您访问 file:/// 时,您将像在浏览器的文件查看器上打开文件一样打开文件,而不是通过 http:// 在 HTTP Web 服务器上运行它
-
收到 404 错误后,请检查您的 Apache(或其他网络服务器...)错误日志 - 它会告诉您 Apache 尝试 服务的文件。这应该会给您一些提示 - 如果您仍然无法从那里弄清楚,请使用该文件更新我们。在 Ubuntu Linux 上,我在
/var/log/apache2/error.log找到了我的错误日志。 -
哎呀。我似乎没有重定向 - 我希望成功调用时出现空白白屏(或失败时为 0)。最后一个问题:在活动服务器上,url 是
example.com/send.php还是example.com/3H-Web-Wlements/send.php? -
example.com。 3h-web-wlements 只是 htdocs 中的一个文件夹。我以这种方式构建只是为了保持示例的清洁。我将文件内容上传到域的根目录。