我目前正在开发一个使用 Yii 框架的 PHP 网络应用程序。
因为我想阻止从 Web 浏览器直接访问 Yii 所需的一些文件,我将 framework 和 protected 文件夹都移到了 htdocs 文件夹之外。
因此,我最终得到了以下文件夹设置:
/apache22/htdocs
/apache22/htdocs/myproject/index.php -- Yii bootstrap file
/apache22/htdocs/myproject/css
/apache22/htdocs/myproject/js
/apache22/htdocs/myproject/images/apache22/vendor/yii-1.1.10 -- Yii framework folder outside documents root
/apache22/htdocs-private/myproject/protected
/apache22/htdocs-private/myproject/runtime
如您所见,只有 Bootstrap 文件和一些其他必需的 css、js 和图像文件可直接从 Web 浏览器访问。所有其他文件,例如 Yii 核心框架和 Yii 在 protected 和运行时文件夹中生成的特定应用程序私有(private)文件,都位于我的应用程序 Web 根目录之外。
虽然按照 Yii 框架的建议,此设置很好且安全,但当将它们全部放在 Netbeans 中时,我无法进行这种分离。似乎 Netbeans 不允许我在同一个项目中将文件放在我的网络服务器的不同文件夹级别。
我想知道是否唯一的解决方案是创建单独的 netbeans 项目:一个用于公共(public)网站部分,另一个用于私有(private)网站部分。
有什么建议吗?
最好的问候。
最佳答案
虽然它可能只是部分解决您的问题,但您可以为您的项目添加一个额外的包含路径。
假设 /apache22/htdocs/myproject/
是您的项目文件夹。
- 右键单击项目名称
- 选择“属性”
- 选择“PHP 包含路径”
- 点击“添加文件夹...”
- 添加
/apache22/htdocs-private/myproject/
它现在应该出现在“包含路径”下的左侧边栏中。但看起来您无法从那里提交。
关于php - 如何使用 Netbeans 在 htdocs 之外保护 yii 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11354452/