首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许受保护目录中的PHP脚本

允许受保护目录中的PHP脚本
EN

Stack Overflow用户
提问于 2011-03-25 22:33:46
回答 2查看 1.3K关注 0票数 1

我有一个名为'templates‘的文件夹,它是CHMOD 777,由htpasswd保护。这意味着我仍然可以使用PHP上传脚本将文件上传到该文件夹中,而外部人员无法访问这些文件。

我还得到了一个使用phpmailer类的脚本。此脚本发送电子邮件并附加位于该受保护文件夹中的文件。

我的问题是,现在我启用了这种保护,我确实收到了电子邮件,但没有附件。只有在没有htpasswd保护的情况下,我才会收到附件。

你知道我能做什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-25 22:39:55

PHP在has服务器的htpasswd保护范围之外运行-一旦脚本运行,它就可以自由控制文件系统(至少是has服务器的userid/groupid可以接触的内容)。除非您将要附加的文件的路径作为URL提供,否则对该文件的任何操作都将通过正常的文件系统操作,而不是通过does服务器,因此htpasswd保护不会出现在图片中。

如果文件没有被附加,我会检查脚本,看看您是否提供了适当的文件路径,以及see服务器的userid是否具有对该文件的读取权限。

票数 1
EN

Stack Overflow用户

发布于 2011-03-25 22:47:32

确保脚本将附件文件作为文件系统上的路径进行访问,如

代码语言:javascript
运行
复制
/var/www/example.com/httpdocs/uploads/foo.jpg

不是作为URL

代码语言:javascript
运行
复制
http://example.com/uploads/foo.jpg

确认该脚本可以访问该文件

代码语言:javascript
运行
复制
<?php
if(!is_readable($file)) {
   $user = get_current_user();
   echo 'Error: '.$user.' cannot access '.$file;
   exit();
}
?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5433855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档