如何保护 html 页面和部分中的 PHP 代码?
How to Secure PHP code in htm Pages and Partials?
我正在使用 OctoberCMS, based on Laravel and Twig, with Nginx and PHP7.0-FPM。
我使用 CMS 后端编辑器制作页面或部分。可以编辑 HTML 标记和代码。
页面将呈现为 localhost/mypage 并隐藏 php 源代码。
但我可以在浏览器中转到 localhost/themes/mysite/pages/mypage.htm 并以纯文本形式查看 Twig 标记和 PHP 评论。
在某些页面上,我可以查看所有 PHP 和 Laravel 代码,例如与数据库名称和表的连接。
代码编辑器中 onStart() 函数中的任何内容,即使它包含在 htm 文件中的 php 标记中。
mypage.htm 输出:
然而,当查看 .php 文件时,它只显示输出而不显示源代码。
我试图将页面文件扩展名更改为 php 而不是 htm 但出现错误。
Invalid file extension: php. Allowed extensions are: htm.
您是否正确设置了 nginx 以将这些文件和其他未经许可的文件列入黑名单? http://octobercms.com/docs/setup/configuration#nginx-configuration
或者,您可以采用白名单安全方法并使用 october:mirror
命令:http://octobercms.com/docs/setup/configuration#public-folder
我正在使用 OctoberCMS, based on Laravel and Twig, with Nginx and PHP7.0-FPM。
我使用 CMS 后端编辑器制作页面或部分。可以编辑 HTML 标记和代码。
页面将呈现为 localhost/mypage 并隐藏 php 源代码。
但我可以在浏览器中转到 localhost/themes/mysite/pages/mypage.htm 并以纯文本形式查看 Twig 标记和 PHP 评论。
在某些页面上,我可以查看所有 PHP 和 Laravel 代码,例如与数据库名称和表的连接。
代码编辑器中 onStart() 函数中的任何内容,即使它包含在 htm 文件中的 php 标记中。
mypage.htm 输出:
然而,当查看 .php 文件时,它只显示输出而不显示源代码。
我试图将页面文件扩展名更改为 php 而不是 htm 但出现错误。
Invalid file extension: php. Allowed extensions are: htm.
您是否正确设置了 nginx 以将这些文件和其他未经许可的文件列入黑名单? http://octobercms.com/docs/setup/configuration#nginx-configuration
或者,您可以采用白名单安全方法并使用 october:mirror
命令:http://octobercms.com/docs/setup/configuration#public-folder