Php 服务器上上传图像的最佳位置是什么?
默认情况下,服务器上有许多可用文件夹,如“public_html”、“public_ftp”或根目录,其中哪一个是安全上传和存储用户图像的最佳文件夹?我还可以添加到mysql db的链接?如果您的客户端通过http表单上传图像,如果需要从web访问,请将其存储在公共html中。如果您的客户端通过http表单上传图像,如果需要从web访问,请将其存储在公共html中。文档根目录中的任何文件夹都可以。如果希望安全,请确保脚本只接受允许键入的文件,并将.htaccess文件放在该文件夹中:Php 服务器上上传图像的最佳位置是什么?,php,image,upload,directory,Php,Image,Upload,Directory,默认情况下,服务器上有许多可用文件夹,如“public_html”、“public_ftp”或根目录,其中哪一个是安全上传和存储用户图像的最佳文件夹?我还可以添加到mysql db的链接?如果您的客户端通过http表单上传图像,如果需要从web访问,请将其存储在公共html中。如果您的客户端通过http表单上传图像,如果需要从web访问,请将其存储在公共html中。文档根目录中的任何文件夹都可以。如果希望安全,请确保脚本只接受允许键入的文件,并将.htaccess文件放在该文件夹中: <F
<FilesMatch "*.php">
SetHandler None
</FilesMatch>
SetHandler无
这将确保不会在此目录中执行任何get操作。文档根目录中的任何文件夹都可以。如果希望安全,请确保脚本只接受允许键入的文件,并将.htaccess文件放在该文件夹中:
<FilesMatch "*.php">
SetHandler None
</FilesMatch>
SetHandler无
这将确保不会在此目录中执行任何get操作。我建议您将文件保存在“public\u html”中的某个位置,并创建以下文件以限制公共访问: 文件:upload/.htaccess
deny from all
在php脚本中,您只能将文件发送给具有访问权限的用户。我建议您将文件保存在“public\u html”中的某个位置,并创建以下文件以限制公共访问: 文件:upload/.htaccess
deny from all
在您的php脚本中,您只能将文件发送给具有访问权限的用户。在我看来,请将其存储在公共htdocs文件夹的外部。这就是说,如果有人试图上传图像文件以外的任何东西(比如一个邪恶的PHP脚本),他们将无法调用它(而且它也不会运行) 如果你是public_html文件夹,比如说
/path/to/website/public_html
,我会将它们存储在/path/to/website/uploaded_images
此外,请确保您验证了它,以便它使用允许的图像名称的白名单(例如仅允许.jpg、.gif和.png)
编辑:
您还需要创建一个脚本,打开图像文件并将其传递回用户在我看来,将其存储在公共htdocs文件夹的之外。这就是说,如果有人试图上传图像文件以外的任何东西(比如一个邪恶的PHP脚本),他们将无法调用它(而且它也不会运行) 如果你是public_html文件夹,比如说
/path/to/website/public_html
,我会将它们存储在/path/to/website/uploaded_images
此外,请确保您验证了它,以便它使用允许的图像名称的白名单(例如仅允许.jpg、.gif和.png)
编辑:
您还需要创建一个脚本,打开图像文件并将其传回给用户
如果你想在网站上显示这些图像,那显然是public\u html
中的一个文件夹,除非你想使用一个脚本将图像呈现给用户,可能会动态地改变图像,更改缓存头等。然后,您可以将该文件夹移动到docroot之外脚本可以访问这些文件的任何位置
就我个人而言,我将用户图像、文件和所有内容存储在docroot中,受.htaccess
保护,并在必要时通过处理用户权限的脚本进行访问。这些文件位于/uploaded
文件夹中,其子文件夹最多有两层,每个“层”最多可存储1024个目录/文件。文件仅由其ID命名,没有任何扩展名,所有文件信息都存储在数据库中。我花了一些时间来实现,但谢天谢地,这是一个可重用的代码。安全定义
如果你想在网站上显示这些图像,那显然是public\u html
中的一个文件夹,除非你想使用一个脚本将图像呈现给用户,可能会动态地改变图像,更改缓存头等。然后,您可以将该文件夹移动到docroot之外脚本可以访问这些文件的任何位置
就我个人而言,我将用户图像、文件和所有内容存储在docroot中,受
.htaccess
保护,并在必要时通过处理用户权限的脚本进行访问。这些文件位于/uploaded
文件夹中,其子文件夹最多有两层,每个“层”最多可存储1024个目录/文件。文件仅由其ID命名,没有任何扩展名,所有文件信息都存储在数据库中。我花了一些时间来实现,但谢天谢地,这是一个可重用的代码。上载的图像也将不可用。我忘记了创建一个脚本来传递图像,编辑了我的postShow,然后使用脚本显示图像。@Prikkeldraad为什么?Apache在提供图像方面比PHP好得多。上传的图像也将不可用。我忘了创建一个脚本来传递图像,编辑了我的postShow,然后使用脚本显示图像。@Prikkeldraad为什么?Apache在提供图像方面比PHP好得多。忘记询问存储限制了。如果我有无限的空间,它是为所有文件夹还是只为ftp?感谢您询问有关存储限制的问题。如果我有无限的空间,它是为所有文件夹还是只为ftp?谢谢