spu*_*der 0 html javascript php lamp tomcat
我需要自动化和简化员工向客户发送大文件的方式。
员工使用 scp 将大 (2GB+) 文件发送到我们的 LAMP 服务器。
员工 ssh 进入 Web 服务器
员工将文件移动到 Web 目录内的一个新文件
夹中
员工在文件夹上运行 chmod员工创建带有客户名称和随机密码的 .htaccess 文件
员工找出新创建文件夹的公共 URL 并通过电子邮件向客户发送链接。
我已经通过 bash 脚本大大简化了这个过程,但对于员工来说仍然太耗时了。(超过 10 分钟!)我需要制作一个简单的 html5 网页,员工可以将文件“拖放”到其中,然后接收他们可以发送给客户的公共链接。
只有内部员工才能上传文件。员工和客户将能够下载文件。
有关我正在尝试实施的示例,请参阅https://letscrate.com/。
不幸的是,由于公司政策,letscrate.com、dropbox 和 google drive 不能用于共享大文件。
使用 HTML5 和这个例子:http : //html5demos.com/dnd-upload 我能够将大文件上传到我们的内部网络服务器。这就是我被困的地方。
一旦我在服务器上有了大文件,我如何将文件移动到 web 目录并设置一个 .htaccess 文件?
我正在考虑运行一个 cron 作业来定期将文件移动到 web 根目录并配置 .htaccess 文件,但我想这样做而不在服务器上运行任何额外的服务/cron 任务。
所有员工都使用 firefox 或 chrome(不是 ie)。
我的第一反应是这样的:
做一个让用户上传文件的管理员(普通文件上传、Flash 文件上传或 HTML5,无关紧要)。
然后将该文件存储在 www-root 之外(无法直接访问该文件)。
让用户为此文件添加用户名/密码并为该文件生成唯一的 ID/密钥。(数据库列:id、文件名、用户名、密码、url_key)。
向用户提供他们可以发送给客户端的完整 url。
当客户加载:mydomain.com/file/the_generated_url_key 时,您从 url 中获取密钥(如果存在),并提示您针对数据库进行身份验证的登录框。
然后您只需执行以下操作:
echo file_get_contents(path_to_the_real_file);
Run Code Online (Sandbox Code Playgroud)
当然使用正确的标题,具体取决于文件类型。
就像评论说的那样。不要让 PHP 弄乱 .htaccess,或者让用户直接使用 SFTP 到服务器。
如果您不希望它们通过浏览器上传,您也不能真正使用 HTML5,因为它仍然是浏览器上传。让他们使用 FTP(更容易锁定他们可以访问的文件夹)并让他们从管理员那里选择上传的文件并设置用户名/密码并生成一个 URL。
| 归档时间: |
|
| 查看次数: |
280 次 |
| 最近记录: |