如何使用PHP保护目录?

如何使用PHP保护目录?,php,security,Php,Security,注意,这是一个远程服务器,我没有访问权,只有FTP。我想使用纯PHP,而不是.htaccess来实现这一点。是否有一种类似于.net的方法,即放置web.config文件并设置可以访问该文件的人及其密码?为什么使用PHP。htaccess文件就是为此而设计的。如果您试图在数据库中存储用户登录,请查看 您可以做的是将文件放在webroot之外,并在通过身份验证逻辑后编写一个php脚本来为这些文件提供服务。为什么要使用php。htaccess文件就是为此而设计的。如果您试图在数据库中存储用户登录,请

注意,这是一个远程服务器,我没有访问权,只有FTP。我想使用纯PHP,而不是.htaccess来实现这一点。是否有一种类似于.net的方法,即放置web.config文件并设置可以访问该文件的人及其密码?

为什么使用PHP。htaccess文件就是为此而设计的。如果您试图在数据库中存储用户登录,请查看


您可以做的是将文件放在webroot之外,并在通过身份验证逻辑后编写一个php脚本来为这些文件提供服务。

为什么要使用php。htaccess文件就是为此而设计的。如果您试图在数据库中存储用户登录,请查看


您可以做的是将文件放在webroot之外,并在通过身份验证逻辑后编写一个php脚本来为这些文件提供服务。

据我所知,完全用php无法做到这一点


如果您可以使用.htaccess,但由于任何原因无法上传它,那么我建议您通过PHP编写htaccess。

据我所知,完全用PHP是无法做到这一点的


如果您可以使用.htaccess,但由于任何原因无法上传,那么我建议您通过PHP编写htaccess。

目录保护始终是Web服务器的工作。无论您在PHP脚本中做什么,Web服务器都有责任首先执行脚本。如果您试图访问目录中的另一个文件,Web服务器将把它交给用户,甚至不看您的脚本。如果用户请求目录列表,则是Web服务器将其交给用户


如果要保护真实的“物理”目录,您必须正确配置Web服务器,最有可能使用.htaccess文件。

目录保护始终是Web服务器的工作。无论您在PHP脚本中做什么,Web服务器都有责任首先执行脚本。如果您试图访问目录中的另一个文件,Web服务器将把它交给用户,甚至不看您的脚本。如果用户请求目录列表,则是Web服务器将其交给用户


如果要保护真实的“物理”目录,您必须正确配置web服务器,最有可能使用.htaccess文件。

我想说,Apache上web.config的类似功能是使用.htaccess文件:PHP用于生成页面,但如果您试图在目录级别工作,检查必须在调用PHP之前进行

在PHP脚本中,您可以访问HTTP身份验证的数据;请参见,尤其是
PHP_AUTH_USER
PHP_AUTH_PW
;但是保护将在文件级别,而不是目录级别——显然,它将只对PHP文件(例如,不是子目录中的图像)实施

有关更多信息,您可以查看,例如:


对整个目录执行此操作的正确方法是使用.htpasswd/.htaccess文件(或直接在Apache的配置文件中)。

我想说,Apache上web.config的类似功能是使用.htaccess文件:PHP用于生成页面,但是如果您试图在目录级别工作,检查必须在调用PHP之前进行

在PHP脚本中,您可以访问HTTP身份验证的数据;请参见,尤其是
PHP_AUTH_USER
PHP_AUTH_PW
;但是保护将在文件级别,而不是目录级别——显然,它将只对PHP文件(例如,不是子目录中的图像)实施

有关更多信息,您可以查看,例如:


对整个目录执行此操作的正确方法是使用.htpasswd/.htaccess文件(或直接在Apache的配置文件中)。

用户的凭据是否存储在数据库中的任何位置?还是所有用户都将使用一个公共登录来访问目录?用户的凭据是否存储在数据库中的任何位置?或者所有用户都会使用一个通用的登录来访问目录?我认为很明显,如果他只有FTP访问服务器的权限,那么他就不能安装apache modsUnkwntech:True,但是有可能它已经安装好了。我认为很明显,如果他只有对服务器的FTP访问权限,那么他就不能安装apache modsUnkwntech:是的,但是有可能它已经安装好了。