在新安装时,curl和wget为helloworld.php返回错误500但是浏览器没问题

时间:2016-11-03 14:18:43

标签: php apache .htaccess curl wget

我没有.htaccess文件。我有index.php,它具有以下内容,并且可以在Chrome或Safari等浏览器中精美地运行:

<?php print "hello world"; ?>

当我在浏览器中加载它时,我得到:hello world。 当我尝试以下任何一种情况时,我得到ERROR 500:内部服务器错误。

我检查了所有apache日志文件,除了在webrowser中加载它时,根本看不到任何内容。

这是Ubuntu 16.04 php7.0 Apache2。所有新安装和更新的版本以及截至2016年11月3日的最新版本

我尝试重新安装wget。我试过来自其他机器和本地机器的wget。

我尝试将清漆放在端口80上,将端口8080上的apache放在清漆后面......没有任何改变。

Wget在调试中输出以下内容:

root@one:~# wget --debug http://example.com/index.php
DEBUG output created by Wget 1.17.1 on linux-gnu.

Reading HSTS entries from /root/.wget-hsts
URI encoding = ‘UTF-8’
--2016-11-03 07:51:27--  http://example.com/index.php
Resolving example.com (example.com)... 207.158.37.70
Caching example.com =207.158.37.70
Connecting to example.com (example.com)|207.158.37.70|:80... connected.
Created socket 3.
Releasing 0x0000561eeda0d190 (new refcount 1).

---request begin---
GET /index.php HTTP/1.1
User-Agent: Wget/1.17.1 (linux-gnu)
Accept: */*
Accept-Encoding: identity
Host: example.com
Connection: Keep-Alive

---request end---
HTTP request sent, awaiting response... 
---response begin---
HTTP/1.1 500 Internal Server Error
Server: Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.20 OpenSSL/1.0.1f mod_perl/2.0.8 Perl/v5.18.2
Content-Type: text/html; charset=iso-8859-1
Content-Length: 538
Accept-Ranges: bytes
Date: Thu, 03 Nov 2016 14:49:42 GMT
X-Varnish: 2177415129
Age: 0
Via: 1.1 varnish
Connection: keep-alive

---response end---
500 Internal Server Error
Registered socket 3 for persistent reuse.
URI content encoding = ‘iso-8859-1’
Skipping 538 bytes of body: [<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>500 Internal Server Error</title>
</head><body>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error or
misconfiguration and was unable to complete
your request.</p>
<p>Please contact the server administrator at 
 voztechnologies@gmail.com to inform them of the time this error occurred,
 and the actions you performed just before this error.</p>
<p>More information about this error may be available
in the server erroSkipping 26 bytes of body: [r log.</p>
</body></html>
] done.
2016-11-03 07:51:27 ERROR 500: Internal Server Error.

Saving HSTS entries to /root/.wget-hsts
root@one:~# 

2 个答案:

答案 0 :(得分:1)

你的apache可能不接受任何来自curl或wget的useragent。这可以从httpd.conf文件配置(或者可能是其他地方,没有太多经验)。

如果您使用wget或curl浏览器的useragent,它应该与您合作。例如:

wget -U "Opera 11.0" http://www.test.com/
curl -A "Opera 11.0" http://www.test.com/

答案 1 :(得分:0)

我注意到服务器上的另一个域名有效。所以,我复制了vhost,重新加载了apache,它仍然没有工作。我把一切都搞定了。最后我看到DNS被指向我的开发服务器,它没有收听我的域名并返回错误500.

更新了DNS并重新开启了节目。感谢您帮助我完成创意!