找回密码
 立即注册
搜索
查看: 13292|回复: 4

[网络] 求一个类似于Aria2的工具

[复制链接]
     
发表于 2016-4-2 19:13 | 显示全部楼层 |阅读模式
有个Apache+MySQl+PHP的服务器,我只有FTP和phpmadmin的界面,不允许直接做代理服务器使用,空间配额我偶尔想用作离线下载墙边的http、ftp资源,有这样现成或者改改就能用的公具吗?我是码盲,自己感觉是下载可以用PHP調wget来做
回复

使用道具 举报

发表于 2016-4-2 20:08 来自手机 | 显示全部楼层
恐怕难。php调用外部命令一般通过shell_exec、exec、system、passthrough等等几个函数,而这几个函数一般出于安全原因是禁用的。你可以写个phpinfo传到服务器上看看disable_functions禁用了哪些函数。
回复

使用道具 举报

     
 楼主| 发表于 2016-4-2 22:12 | 显示全部楼层

Build Date
Configure Command
'./configure' '--with-mysql' '--with-mysqli' '--with-apxs2=/usr/local/apache2/bin/apxs' '--with-gd' '--with-jpeg-dir=/usr/lib' '--with-zlib' '--with-mcrypt' '--enable-mbstring' '--with-freetype-dir=/usr/include/freetype2' '--with-imap' '--with-tidy' '--with-imap-ssl' '--with-kerberos' '--with-pdo-mysql' '--with-libdir=lib64' '--libdir=/usr/lib64' '--enable-ftp' '--with-curl' '--with-openssl'
Server API
Apache 2.0 Handler
Virtual Directory Support
disabled
Configuration File (php.ini) Path
/usr/lib64
Loaded Configuration File
/etc/php.ini
Scan this dir for additional .ini files
(none)
Additional .ini files parsed
(none)
PHP API
20090626
PHP Extension
20090626
Zend Extension
220090626
Zend Extension Build
API220090626,NTS
PHP Extension Build
API20090626,NTS
Debug Build
no
Thread Safety
disabled
Zend Memory Manager
enabled
Zend Multibyte Support
disabled
IPv6 Support
enabled
Registered PHP Streams
https, ftps, compress.zlib, php, file, glob, data, http, ftp, phar
Registered Stream Socket Transports
tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters
zlib.*, convert.iconv.*, mcrypt.*, mdecrypt.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk

file:///D:/prg/WizNote/My%20Knowledge/temp/1dfaf304-b418-4877-b6f5-8e4ba8e2955f_128_files/in_2.gifThis program makes use of the Zend Scripting Language Engine:
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies


PHP Credits
Configurationapache2handler
Apache Version
Apache
Apache API Version
20051115
Server Administrator
Hostname:Port
User/Group
apache(48)/500
Max Requests
Per Child: 1000 - Keep Alive: on - Max Per Connection: 1000
Timeouts
Connection: 18 - Keep-Alive: 5
Virtual Server
Yes
Server Root
/usr/local/apache2
Loaded Modules
core mod_authn_file mod_authn_default mod_authz_host mod_authz_groupfile mod_authz_user mod_authz_default mod_auth_basic mod_include mod_filter mod_log_config mod_env mod_unique_id mod_setenvif mod_version prefork http_core mod_mime mod_autoindex mod_asis mod_cgi mod_vhost_alias mod_negotiation mod_dir mod_actions mod_userdir mod_alias mod_so mod_rewrite mod_php5 mod_log_sql mod_log_sql_mysql mod_load

Directive
Local Value
Master Value
engine
1
1
last_modified
0
0
xbithack
0
0

Apache Environment
Variable
Value
UNIQUE_ID
Vv-F71d2an8AAEnF8EcAAABK
HTTP_HOST
HTTP_CONNECTION
keep-alive
HTTP_ACCEPT
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_USER_AGENT
Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.152 Safari/537.22
HTTP_ACCEPT_ENCODING
gzip,deflate
HTTP_ACCEPT_LANGUAGE
en-us,en
HTTP_ACCEPT_CHARSET
iso-8859-1,*,utf-8
PATH
/sbin:/usr/sbin:/bin:/usr/bin
SERVER_SIGNATURE
no value
SERVER_SOFTWARE
Apache
SERVER_NAME
SERVER_ADDR
SERVER_PORT
80
REMOTE_ADDR
DOCUMENT_ROOT
/usr/local/apache2/htdocs
SERVER_ADMIN
support@d
SCRIPT_FILENAME
/usr/local/ap
REMOTE_PORT
51118
GATEWAY_INTERFACE
CGI/1.1
SERVER_PROTOCOL
HTTP/1.1
REQUEST_METHOD
GET
QUERY_STRING
no value
REQUEST_URI
/
SCRIPT_NAME

HTTP Headers Information
HTTP Request Headers
HTTP Request
GET
Host
Connection
keep-alive
Accept
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent
Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.152 Safari/537.22
Accept-Encoding
gzip,deflate
Accept-Language
en-us,en
Accept-Charset
iso-8859-1,*,utf-8
HTTP Response Headers
X-Powered-By
PHP/5.3.27
Keep-Alive
timeout=5, max=1000
Connection
Keep-Alive
Transfer-Encoding
chunked
Content-Type
text/html

Core
PHP Version
5.3.27

Directive
Local Value
Master Value
allow_call_time_pass_reference
Off
Off
allow_url_fopen
On
On
allow_url_include
Off
Off
always_populate_raw_post_data
Off
Off
arg_separator.input
&
&
arg_separator.output
&
&
asp_tags
Off
Off
auto_append_file
no value
no value
auto_globals_jit
On
On
auto_prepend_file
no value
no value
browscap
no value
no value
default_charset
no value
no value
default_mimetype
text/html
text/html
define_syslog_variables
Off
Off
disable_classes
no value
no value
disable_functions
no value
no value
display_errors
Off
Off
display_startup_errors
Off
Off
doc_root
no value
no value
docref_ext
no value
no value
docref_root
no value
no value
enable_dl
On
On
error_append_string
no value
no value
error_log
no value
no value
error_prepend_string
no value
no value
error_reporting
30711
30711
exit_on_timeout
Off
Off
expose_php
On
On
extension_dir
/usr/lib64/php/
/usr/lib64/php/
file_uploads
On
On
highlight.bg
#FFFFFF
#FFFFFF
highlight.comment
#FF8000
#FF8000
highlight.default
#0000BB
#0000BB
highlight.html
#000000
#000000
highlight.keyword
#007700
#007700
highlight.string
#DD0000
#DD0000
html_errors
On
On
ignore_repeated_errors
Off
Off
ignore_repeated_source
Off
Off
ignore_user_abort
Off
Off
implicit_flush
Off
Off
include_path
.:/usr/local/apache2/htdocs/DB/
.:/usr/lib64/php
log_errors
On
On
log_errors_max_len
1024
1024
magic_quotes_gpc
Off
Off
magic_quotes_runtime
Off
Off
magic_quotes_sybase
Off
Off
mail.add_x_header
Off
Off
mail.force_extra_parameters
no value
no value
mail.log
no value
no value
max_execution_time
10
30
max_file_uploads
20
20
max_input_nesting_level
64
64
max_input_time
60
60
max_input_vars
1000
1000
memory_limit
35M
15M
open_basedir
/usr/local/apache2/:/tmp/
/usr/local/apache2/:/tmp/
output_buffering
no value
no value
output_handler
no value
no value
post_max_size
8M
8M
precision
14
14
realpath_cache_size
16K
16K
realpath_cache_ttl
120
120
register_argc_argv
On
On
register_globals
Off
Off
register_long_arrays
On
On
report_memleaks
On
On
report_zend_debug
On
On
request_order
no value
no value
safe_mode
On
Off
safe_mode_exec_dir
no value
no value
safe_mode_gid
Off
Off
safe_mode_include_dir
no value
no value
sendmail_from
root
sendmail_path
/usr/sbin/sendmail -t -i
/usr/sbin/sendmail -t -i -froot
serialize_precision
100
100
short_open_tag
On
On
SMTP
localhost
localhost
smtp_port
25
25
sql.safe_mode
Off
Off
track_errors
Off
Off
unserialize_callback_func
no value
no value
upload_max_filesize
10M
10M
upload_tmp_dir
/usr/local/apache2/htdocs/tmp
/usr/local/apache2/htdocs/tmp
user_dir
no value
no value
user_ini.cache_ttl
300
300
user_ini.filename
.user.ini
.user.ini
variables_order
EGPCS
EGPCS
xmlrpc_error_number
0
0
xmlrpc_errors
Off
Off
y2k_compliance
On
On
zend.enable_gc
On
On

ctype
ctype functions
enabled

curl
cURL support
enabled
cURL Information
7.15.5
Age
2
Features
AsynchDNS
No
Debug
No
GSS-Negotiate
Yes
IDN
Yes
IPv6
Yes
Largefile
Yes
NTLM
Yes
SPNEGO
No
SSL
Yes
SSPI
No
krb4
No
libz
Yes
CharConv
No
Protocols
tftp, ftp, telnet, dict, ldap, http, file, https, ftps
Host
x86_64-redhat-linux-gnu
SSL Version
OpenSSL/0.9.8b
ZLib Version
1.2.3

date
date/time support
enabled
"Olson" Timezone Database Version
2013.3
Timezone Database
internal
Default timezone
Europe/Berlin

Directive
Local Value
Master Value
date.default_latitude
31.7667
31.7667
date.default_longitude
35.2333
35.2333
date.sunrise_zenith
90.583333
90.583333
date.sunset_zenith
90.583333
90.583333
date.timezone
Europe/Berlin
Europe/Berlin

dom
DOM/XML
enabled
DOM/XML API Version
20031129
libxml Version
2.6.26
HTML Support
enabled
XPath Support
enabled
XPointer Support
enabled
Schema Support
enabled
RelaxNG Support
enabled

ereg
Regex Library
Bundled library enabled

fileinfo
fileinfo support
enabled
version
1.0.5-dev

filter
Input Validation and Filtering
enabled
Revision
$Id: 209a1c3c98c04a5474846e7bbe8ca72054ccfd4f $

Directive
Local Value
Master Value
filter.default
unsafe_raw
unsafe_raw
filter.default_flags
no value
no value

ftp
FTP support
enabled

gd
GD Support
enabled
GD Version
bundled (2.1.0 compatible)
FreeType Support
enabled
FreeType Linkage
with freetype
FreeType Version
2.2.1
GIF Read Support
enabled
GIF Create Support
enabled
JPEG Support
enabled
libJPEG Version
6b
PNG Support
enabled
libPNG Version
1.2.10
WBMP Support
enabled
XBM Support
enabled

Directive
Local Value
Master Value
gd.jpeg_ignore_warning
0
0

hash
hash support
enabled
Hashing Engines
md2 md4 md5 sha1 sha224 sha256 sha384 sha512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost adler32 crc32 crc32b salsa10 salsa20 haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

iconv
iconv support
enabled
iconv implementation
glibc
iconv library version
2.5

Directive
Local Value
Master Value
iconv.input_encoding
ISO-8859-1
ISO-8859-1
iconv.internal_encoding
ISO-8859-1
ISO-8859-1
iconv.output_encoding
ISO-8859-1
ISO-8859-1

imap
IMAP c-Client Version
2004
SSL Support
enabled
Kerberos Support
enabled

json
json support
enabled
json version
1.2.1

libxml
libXML support
active
libXML Compiled Version
2.6.26
libXML Loaded Version
20626
libXML streams
enabled

mbstring
Multibyte Support
enabled
Multibyte string engine
libmbfl
HTTP input encoding translation
disabled

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Multibyte (japanese) regex support
enabled
Multibyte regex (oniguruma) backtrack check
On
Multibyte regex (oniguruma) version
4.7.1

Directive
Local Value
Master Value
mbstring.detect_order
no value
no value
mbstring.encoding_translation
Off
Off
mbstring.func_overload
0
0
mbstring.http_input
pass
pass
mbstring.http_output
pass
pass
mbstring.http_output_conv_mimetypes
^(text/|application/xhtml\+xml)
^(text/|application/xhtml\+xml)
mbstring.internal_encoding
no value
no value
mbstring.language
neutral
neutral
mbstring.strict_detection
Off
Off
mbstring.substitute_character
no value
no value

mcrypt
mcrypt support
enabled
mcrypt_filter support
enabled
Version
2.5.8
Api No
20021217
Supported ciphers
cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes
Supported modes
cbc cfb ctr ecb ncfb nofb ofb stream

Directive
Local Value
Master Value
mcrypt.algorithms_dir
no value
no value
mcrypt.modes_dir
no value
no value

mysql
MySQL Support
enabled
Active Persistent Links
1
Active Links
1
Client API version
5.1.54
MYSQL_MODULE_TYPE
external
MYSQL_SOCKET
/tmp/mysql.sock
MYSQL_INCLUDE
-I/usr/include/mysql
MYSQL_LIBS
-L/usr/lib64 -lmysqlclient

Directive
Local Value
Master Value
mysql.allow_local_infile
On
On
mysql.allow_persistent
On
On
mysql.connect_timeout
60
60
mysql.default_host
no value
no value
mysql.default_password
no value
no value
mysql.default_port
no value
no value
mysql.default_socket
/tmp/mysql.sock
/tmp/mysql.sock
mysql.default_user
no value
no value
mysql.max_links
Unlimited
Unlimited
mysql.max_persistent
Unlimited
Unlimited
mysql.trace_mode
Off
Off

mysqli
MysqlI Support
enabled
Client API library version
5.1.54
Active Persistent Links
0
Inactive Persistent Links
0
Active Links
0
Client API header version
5.1.54
MYSQLI_SOCKET
/tmp/mysql.sock

Directive
Local Value
Master Value
mysqli.allow_local_infile
On
On
mysqli.allow_persistent
On
On
mysqli.default_host
no value
no value
mysqli.default_port
3306
3306
mysqli.default_pw
no value
no value
mysqli.default_socket
/tmp/mysql.sock
/tmp/mysql.sock
mysqli.default_user
no value
no value
mysqli.max_links
Unlimited
Unlimited
mysqli.max_persistent
Unlimited
Unlimited
mysqli.reconnect
Off
Off

openssl
OpenSSL support
enabled
OpenSSL Library Version
OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
OpenSSL Header Version
OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

pcre
PCRE (Perl Compatible Regular Expressions) Support
enabled
PCRE Library Version
8.32 2012-11-30

Directive
Local Value
Master Value
pcre.backtrack_limit
1000000
1000000
pcre.recursion_limit
100000
100000

PDO
PDO support
enabled
PDO drivers
mysql, sqlite, sqlite2

pdo_mysql
PDO Driver for MySQL
enabled
Client API version
5.1.54

Directive
Local Value
Master Value
pdo_mysql.default_socket
/var/lib/mysql/mysql.sock
/var/lib/mysql/mysql.sock

pdo_sqlite
PDO Driver for SQLite 3.x
enabled
SQLite Library
3.7.7.1

Phar
Phar: PHP Archive support
enabled
Phar EXT version
2.0.1
Phar API version
1.1.1
SVN revision
$Id: 21d763042eb5769ae0a09dc1118df2b5aae6fb33 $
Phar-based phar archives
enabled
Tar-based phar archives
enabled
ZIP-based phar archives
enabled
gzip compression
enabled
bzip2 compression
disabled (install pecl/bz2)
Native OpenSSL support
enabled

Phar based on pear/PHP_Archive, original concept by Davey Shafik.
Phar fully realized by Gregory Beaver and Marcus Boerger.
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle.

Directive
Local Value
Master Value
phar.cache_list
no value
no value
phar.readonly
On
On
phar.require_hash
On
On

posix
Revision
$Id: 5a2da3946b96c5afbf3aff8db8a8681f8bedee85 $

Reflection
Reflection
enabled
Version
$Id: 4af6c4c676864b1c0bfa693845af0688645c37cf $

session
Session Support
enabled
Registered save handlers
files user sqlite
Registered serializer handlers
php php_binary

Directive
Local Value
Master Value
session.auto_start
Off
Off
session.bug_compat_42
Off
Off
session.bug_compat_warn
On
On
session.cache_expire
180
180
session.cache_limiter
nocache
nocache
session.cookie_domain
no value
no value
session.cookie_httponly
Off
Off
session.cookie_lifetime
0
0
session.cookie_path
no value
no value
session.cookie_secure
Off
Off
session.entropy_file
no value
no value
session.entropy_length
0
0
session.gc_divisor
1000
1000
session.gc_maxlifetime
1440
1440
session.gc_probability
1
1
session.hash_bits_per_character
4
4
session.hash_function
0
0
session.name
PHPSESSID
PHPSESSID
session.referer_check
no value
no value
session.save_handler
files
files
session.save_path
/tmp
/tmp
session.serialize_handler
php
php
session.use_cookies
On
On
session.use_only_cookies
On
On
session.use_trans_sid
0
0

SimpleXML
Simplexml support
enabled
Revision
$Id: 02ab7893b36d51e9c59da77d7e287eb3b35e1e32 $
Schema support
enabled

SPL
SPL support
enabled
Interfaces
Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes
AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException

SQLite
SQLite support
enabled
PECL Module version
2.0-dev $Id$
SQLite Library
2.8.17
SQLite Encoding
iso8859

Directive
Local Value
Master Value
sqlite.assoc_case
0
0

sqlite3
SQLite3 support
enabled
SQLite3 module version
0.7-dev
SQLite Library
3.7.7.1

Directive
Local Value
Master Value
sqlite3.extension_dir
no value
no value

standard
Dynamic Library Support
enabled
Path to sendmail
/usr/sbin/sendmail -t -i -froot

Directive
Local Value
Master Value
assert.active
1
1
assert.bail
0
0
assert.callback
no value
no value
assert.quiet_eval
0
0
assert.warning
1
1
auto_detect_line_endings
0
0
default_socket_timeout
60
60
from
no value
no value
safe_mode_allowed_env_vars
PHP_
PHP_
safe_mode_protected_env_vars
LD_LIBRARY_PATH
LD_LIBRARY_PATH
url_rewriter.tags
a=href,area=href,frame=src,input=src,form=fakeentry
a=href,area=href,frame=src,input=src,form=fakeentry
user_agent
no value
no value

tidy
Tidy support
enabled
libTidy Release
11 February 2007
Extension Version
2.0 ($Id$)

Directive
Local Value
Master Value
tidy.clean_output
0
0
tidy.default_config
no value
no value

tokenizer
Tokenizer Support
enabled

xml
XML Support
active
XML Namespace Support
active
libxml2 Version
2.6.26

xmlreader
XMLReader
enabled

xmlwriter
XMLWriter
enabled

zlib
ZLib Support
enabled
Stream Wrapper support
compress.zlib://
Stream Filter support
zlib.inflate, zlib.deflate
Compiled Version
1.2.3
Linked Version
1.2.3

Directive
Local Value
Master Value
zlib.output_compression
Off
Off
zlib.output_compression_level
-1
-1
zlib.output_handler
no value
no value

Additional Modules
Module Name

Environment
Variable
Value
TERM
xterm
LD_LIBRARY_PATH
/usr/local/apache2/lib:
PATH
/sbin:/usr/sbin:/bin:/usr/bin
PWD
/
LANG
de_DE.UTF-8
SHLVL
1
_
/usr/local/apache2/bin/httpd

PHP Variables
Variable
Value
_SERVER["UNIQUE_ID"]
Vv-F71d2an8AAEnF8EcAAABK
_SERVER["HTTP_HOST"]
_SERVER["HTTP_CONNECTION"]
keep-alive
_SERVER["HTTP_ACCEPT"]
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
_SERVER["HTTP_USER_AGENT"]
Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.152 Safari/537.22
_SERVER["HTTP_ACCEPT_ENCODING"]
gzip,deflate
_SERVER["HTTP_ACCEPT_LANGUAGE"]
en-us,en
_SERVER["HTTP_ACCEPT_CHARSET"]
iso-8859-1,*,utf-8
_SERVER["PATH"]
/sbin:/usr/sbin:/bin:/usr/bin
_SERVER["SERVER_SIGNATURE"]
no value
_SERVER["SERVER_SOFTWARE"]
Apache
_SERVER["SERVER_NAME"]
_SERVER["SERVER_ADDR"]
87.
_SERVER["SERVER_PORT"]
80
_SERVER["REMOTE_ADDR"]
121.
_SERVER["DOCUMENT_ROOT"]
/usr/local/apache2/htdocs
_SERVER["SERVER_ADMIN"]
_SERVER["SCRIPT_FILENAME"]
/usr/local/apache2
_SERVER["REMOTE_PORT"]
51118
_SERVER["GATEWAY_INTERFACE"]
CGI/1.1
_SERVER["SERVER_PROTOCOL"]
HTTP/1.1
_SERVER["REQUEST_METHOD"]
GET
_SERVER["QUERY_STRING"]
no value
_SERVER["REQUEST_URI"]
/
_SERVER["SCRIPT_NAME"]
_SERVER["PHP_SELF"]
_SERVER["REQUEST_TIME"]
1459602927
_SERVER["argv"]
Array()
_SERVER["argc"]
0
_ENV["TERM"]
xterm
_ENV["LD_LIBRARY_PATH"]
/usr/local/apache2/lib:
_ENV["PATH"]
/sbin:/usr/sbin:/bin:/usr/bin
_ENV["PWD"]
/
_ENV["LANG"]
de_DE.UTF-8
_ENV["SHLVL"]
1
_ENV["_"]
/usr/local/apache2/bin/httpd

PHP License
This program is free software; you can redistribute it and/or modify it under the terms of the PHP License as published by the PHP Group and included in the distribution in the file: LICENSE
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
If you did not receive a copy of the PHP license, or have any questions about PHP licensing, please contact license@php.net.


回复

使用道具 举报

发表于 2016-4-2 22:29 | 显示全部楼层
这个可能是chroot过或者httpd关掉了那些函数……试试用php-curl来实现吧,用exec调用wget或者fopen打开url都不是很安全。
这个应该可以:https://stackoverflow.com/questi ... hp-low-memory-usage
回复

使用道具 举报

     
 楼主| 发表于 2016-4-3 00:32 | 显示全部楼层
RaidenII 发表于 2016-4-2 22:29
这个可能是chroot过或者httpd关掉了那些函数……试试用php-curl来实现吧,用exec调用wget或者fopen打开url ...

非常感谢你的范例,我改了一个建议界面,已经代测试OK。比较纠结的是下载进度没有界面查看
,也没有办法取消下载中的任务。
  1. /**
  2. * Copy remote file over HTTP one small chunk at a time.
  3. *
  4. * @param $infile The full URL to the remote file
  5. * @param $outfile The path where to save the file
  6. */

  7. <form method="post">
  8. <input name="url" size="50" />
  9. <input name="submit" type="submit" />
  10. </form>

  11. <?php

  12. //  maximum execution time in seconds
  13. set_time_limit (24 * 60 * 60);
  14. if (!isset($_POST['submit'])) die();
  15. // folder to save downloaded files to. must end with slash
  16.      $destination_folder = '/prg/phpStudyLite/tmp/';
  17. //  $destination_folder = '下载路径';
  18. $url = $_POST['url'];
  19. $newfname = $destination_folder . basename($url);
  20. copyfile_chunked($url ,$newfname);


  21. function copyfile_chunked($infile, $outfile) {
  22.     $chunksize = 10 * (1024 * 1024); // 10 Megs

  23.     /**
  24.      * parse_url breaks a part a URL into it's parts, i.e. host, path,
  25.      * query string, etc.
  26.      */
  27.     $parts = parse_url($infile);
  28.     $i_handle = fsockopen($parts['host'], 80, $errstr, $errcode, 5);
  29.     $o_handle = fopen($outfile, 'wb');

  30.     if ($i_handle == false || $o_handle == false) {
  31.         return false;
  32.     }

  33.     if (!empty($parts['query'])) {
  34.         $parts['path'] .= '?' . $parts['query'];
  35.     }

  36.     /**
  37.      * Send the request to the server for the file
  38.      */
  39.     $request = "GET {$parts['path']} HTTP/1.1\r\n";
  40.     $request .= "Host: {$parts['host']}\r\n";
  41.     $request .= "User-Agent: Mozilla/5.0\r\n";
  42.     $request .= "Keep-Alive: 115\r\n";
  43.     $request .= "Connection: keep-alive\r\n\r\n";
  44.     fwrite($i_handle, $request);

  45.     /**
  46.      * Now read the headers from the remote server. We'll need
  47.      * to get the content length.
  48.      */
  49.     $headers = array();
  50.     while(!feof($i_handle)) {
  51.         $line = fgets($i_handle);
  52.         if ($line == "\r\n") break;
  53.         $headers[] = $line;
  54.     }

  55.     /**
  56.      * Look for the Content-Length header, and get the size
  57.      * of the remote file.
  58.      */
  59.     $length = 0;
  60.     foreach($headers as $header) {
  61.         if (stripos($header, 'Content-Length:') === 0) {
  62.             $length = (int)str_replace('Content-Length: ', '', $header);
  63.             break;
  64.         }
  65.     }

  66.     /**
  67.      * Start reading in the remote file, and writing it to the
  68.      * local file one chunk at a time.
  69.      */
  70.     $cnt = 0;
  71.     while(!feof($i_handle)) {
  72.         $buf = '';
  73.         $buf = fread($i_handle, $chunksize);
  74.         $bytes = fwrite($o_handle, $buf);
  75.         if ($bytes == false) {
  76.             return false;
  77.         }
  78.         $cnt += $bytes;

  79.         /**
  80.          * We're done reading when we've reached the conent length
  81.          */
  82.         if ($cnt >= $length) break;
  83.     }

  84.     fclose($i_handle);
  85.     fclose($o_handle);
  86.     return $cnt;
  87. }

  88. ?>
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-8-22 07:41 , Processed in 0.019460 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表