我正在创建一个基于PHP的Web应用程序,它需要使用简单的身份验证。该应用程序被安装在Web服务器上,并且仅用作Web主机/服务器的所有者,因此只有一个用户和密码。我认为创建复杂的登录系统毫无意义。我只想创建一个GUI来生成.htaccess和.htpasswd文件以使用Apache的身份验证。背后的想法是,它应该是简单的,但它变成了比我预期的更多的工作。我意识到我必须将.htpasswd文件放在安全的地方,这意味着不在可访问的Web目录中。问题在于Web服务器通常具有不同的文件系统和权限,因此我可以将它放在哪里安全?根据我所知,我能够创建一个具有“740”权限的目录,这应该是安全的。但是,这是不方便的。应用程序真的应该只限于一个文件夹,并且如果需要的话,应该只有一个.htpasswd文件。我很想将.htpasswd放在应用程序文件夹中,但我相信如果它被.htaccess文件保护,那么我不会这样做,当我尝试它时似乎会导致服务器错误。如果有人有解决方案或更好的地方放置.htpasswd文件,将不胜感激!由PHP生成的.htpasswd放在哪里?
回答
通过默认的Apache应配置不受此规则,以服务于任何.ht*
文件:
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
所以它应该是安全的放置这个文件,无论你想。
如果您遇到服务器错误检查mod_auth
如果编译/于Apache安装启用,如果您的虚拟主机/ Webroot公司拥有AllowOverride AuthConfig
谢谢,我不知道这一点。然而关于这些错误,如果我将.htpasswd文件放在.htaccess保护的文件夹中,我只会收到它们。如果我启用了'mod_auth'并设置了'AllowOverride AuthConfig',这是否允许我这样做没有错误? – 2010-07-26 21:53:22
因此,当你将.htpasswd放在其他地方(并在htaccess中指定此路径)时,它工作正常(您必须登录才能查看页面)? – 2010-07-26 22:15:31
我还没有测试过,但我认为是这样,但是如果我输入了正确的用户名和密码,它就不会验证并再次登录。我的错误日志有这样的说: '原因:要求指令存在,没有权威处理程序。“这是你所指的错误? – 2010-07-26 22:31:15
- 1. 放在哪里/生成使用CakePHP
- 2. PHP MVC:在哪里放置动态生成的Javascript
- 3. 在哪里放&在PHP?
- 4. jNeuroML在生成的NEURON.MOD/NMODL中放置LEMS命令在哪里?
- 5. 在哪里存储由linux软件生成的数据文件?
- 6. WooCommerce - 我可以在哪里编辑由钩子生成的HTML?
- 7. ios:我在哪里保存由alassets库生成的缩略图
- 8. htaccess的:由htpasswd
- 9. 把Maven构建生成的SQL脚本放在哪里?
- 10. 'stack haddock'将它生成的文档放在哪里?
- 11. 放在哪里
- 12. AVD生成的SQLite文件在哪里?
- 13. “生成”归因的位置在哪里?
- 14. Magento catalogsearch_fulltext从哪里生成?
- 15. 放在哪里产生选择选项
- 16. 我在哪里可以将生成器配置放入Rails 4?
- 17. PHP在哪里把生成的HTML代码
- 18. 哪里可以找到由gSOAP生成的WSDL文件
- 19. PHP:在哪里放置返回'假'值?
- 20. 在哪里放置php代码?
- 21. 去哪里放哪里?
- 22. 风帆生成<something>:'生成'的文档在哪里?
- 23. 放在哪里dispatch.Http.shutdown()
- 24. 生成(并检查)_id在哪里?
- 25. Orpheus bpl文件在哪里生成?
- 26. FountainJs - app.js和vendor.js在哪里生成
- 27. Visual Studio在哪里生成wsdl文件?
- 28. Winforms报告生成器,它在哪里?
- 29. CURAND和内核,在哪里生成?
- 30. MVC,在哪里生成ViewModel类?
看看http://stackoverflow.com/questions/747096/ CakePHP的密码保护与 - htaccess的 - 和htpasswd的-HOWTO。 – 2010-07-26 21:27:51
我知道如何htaccess和htpasswd函数,以及如何创建它们。我只是在寻找可以放置跨平台兼容和安全的.htpasswd文件的建议。 – 2010-07-26 21:36:24