Jay*_*Nyc 55 file-upload nginx
我想通过我的nginx服务器上传文件.我现在正在跑步,nginx-1.4.6并愿意nginx-1.5*在必要时搬到最新的马厩.
社区最喜欢的是Valery Kholodkov nginx-upload-module,在这里找到.令人遗憾的是,Valery不再维护此模块,详情请参见此处.截至nginx-1.3.9该模块部分工作或根本不工作.
我已经编译nginx-upload-module成了nginx-1.4.6一个错误(客户端cxn已关闭),它似乎已在nginx-1.5.3 变更集中得到修复.但是我已经应用了补丁并没有运气.
阿纳托利的稍微过时的帖子,在这里,提供了多种解决方案,包括四个解决方案
当我深入研究第二和第四个解决方案时(我不想做出lua依赖,但我可能会这样做)我认为问这个社区是合适的:
目前文件上传的最佳做法是nginx-1.5+什么?
让我补充一点,我正在从python POST命令上传文件并尝试使用curl.PHP不在我的技术堆栈上.
小智 -8
只是一个快速草稿,但试试这个......
Upload.php
if (isset($_FILES['dlc_file']) && !empty($_FILES['dlc_file'])) {
if (empty($_FILES['dlc_file']['name']) === true) {
echo = "Please choose a file to upload";
} else {
$allowed = array('zip', 'rar', 'gzip', 'tar', '7z', 'png', 'jpg');
$file_name = $_FILES['dlc_file']['name'];
$file_extn = strtolower(end(explode('.', $file_name)));
$file_temp = $_FILES['dlc_file']['tmp_name'];
if (in_array($file_extn, $allowed) === true) {
$file_path = 'dlc/' . substr(md5(time()), 0, 10) . '.' . $file_extn;
move_uploaded_file($file_temp, $file_path);
echo = "Successfully uploaded $file_name";
} else {
$file_types = implode(', ', $allowed);
echo "File type is not allowed, Allowed file types $file_types";
}
}
}
index.php
<form action="upload.php" method="post" enctype="multipart/form-data>
<input type="file" name="dlc_file">
<input type="submit" name="submit" value="Upload">
</form>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13002 次 |
| 最近记录: |