哪个php框架适合共享主机? [关闭]
Posted
技术标签:
【中文标题】哪个php框架适合共享主机? [关闭]【英文标题】:Which php framework is good for shared hosting? [closed] 【发布时间】:2016-05-21 04:30:57 【问题描述】:我正在尝试使用 php 框架,但我对 Composer 和终端命令没有信心。我想下载一个框架并将其上传到我的共享主机上,然后开始开发我的应用程序。 有什么建议吗?
谢谢。
【问题讨论】:
codeigniter 对于初学者来说是一个不错的选择,前提是你了解 mvc。 sitepoint.com/best-php-framework-2015-sitepoint-survey-results 是的,我了解mvc,我在可以下载的时候使用了cakephp。但是现在所有的依赖都太难了。我想使用一些教程创建自己的框架,但最后这是一个坏主意。我试试codeigniter。但我看到我也可以下载 Zend Framework 2.4.9 Full。你推荐吗? 【参考方案1】:CodeIgniter https://codeigniter.com 是一个功能强大的 PHP 框架,占用空间非常小
1.解压缩包。
2.将 CodeIgniter 文件夹和文件上传到您的服务器。通常 index.php 文件会在你的根目录下。
3.使用文本编辑器打开 application/config/config.php 文件并设置您的基本 URL。如果您打算使用加密或会话,请设置您的加密密钥。
4.如果您打算使用数据库,请使用文本编辑器打开 application/config/database.php 文件并设置您的数据库设置。
如果您希望通过隐藏 CodeIgniter 文件的位置来提高安全性,您可以将系统和应用程序文件夹重命名为更私密的名称。如果你重命名它们,你必须打开你的主 index.php 文件并使用你选择的新名称设置文件顶部的 $system_path 和 $application_folder 变量。
为了获得最佳安全性,系统和任何应用程序文件夹都应放置在 Web 根目录之上,这样它们就不能通过浏览器直接访问。默认情况下,每个文件夹中都包含 .htaccess 文件以帮助防止直接访问,但最好将它们完全从公共访问中删除,以防 Web 服务器配置发生更改或不遵守 .htaccess。
如果您想公开您的视图,也可以将视图文件夹移出您的应用程序文件夹。
移动它们后,打开您的主 index.php 文件并设置 $system_path、$application_folder 和 $view_folder 变量,最好使用完整路径,例如‘/www/MyUser/system’。
在生产环境中采取的一项额外措施是禁用 PHP 错误报告和任何其他仅用于开发的功能。在 CodeIgniter 中,这可以通过设置 ENVIRONMENT 常量来完成,这在安全页面上有更全面的描述。
就是这样!
无论您走到哪里,您都拥有一个强大的 MVC 框架。它也很受欢迎。
【讨论】:
正如@Pamblam 和你所建议的那样,我刚刚下载了它,这似乎是我需要的真实东西!谢谢大家。 子域是否继续工作?我有一个子域,它应该仍然可以单独工作。 @Refilon 是的,没问题!【参考方案2】:正如上面(或下面?)所发布的,我强烈建议 Laravel。它是目前最强大、最完整、最通用的框架。比大多数框架需要更少的代码来实现某些目标。
您不必真正了解composer,因为安装软件包的命令是在复制粘贴版本中提供给您的。每个包的所有包安装方法都整齐地记录在案。
您需要调整“public”目录,使其通过符号链接指向 public_html 文件夹。
一个简单的符号链接就可以了。将此添加到 .htaccess 中:
Options +FollowSymLinks
如果您没有 cPanel shell 访问权限,只需使用 cron 函数为您创建符号链接。
【讨论】:
我赞成 cron 技巧。谢谢!【参考方案3】:您几乎可以使用几乎所有的框架,包括 Symfony2、Laravel、Codeigniter 或 CakePHP 等。但是,如果您从未使用过框架,我建议您使用 Laravel。因为 Laravel 有一个很棒的社区,还有 laracasts.com(它有很棒的关于 PHP、Laravel 甚至 JS 的截屏视频)。
如果您有使用框架的经验,那么我建议您尝试一下 Symfony2。它是 PHP 的最佳框架之一。 Symfony 也正在成为行业标准。有许多伟大的项目是在 Symfony 组件之上构建的,包括:
Drupal Laravel(是的,laravel 使用了一些 Symfony 的组件) Joomla Magento 代码接收等许多知名公司都在寻找 Symfony 开发人员。因此,如果您是 Symfony 开发人员,那么在伟大的公司会有很多很好的机会。
【讨论】:
但请注意,在研究 laravel 的托管选项时,几乎所有开发人员都会告诉您:“不要在共享托管上使用 laravel”。话虽如此,如果您的共享主机带有终端 (ssh) 访问权限,并且您对 linux 命令行感到满意,并且了解正确的软件工程 (MVC),那么应该没问题。我在共享主机上运行 Laravel 并且运行良好,尽管设置(主要是路径)确实让我有些头疼。此外,您应该检查托管公司允许的 php 版本,因为 Laravel 喜欢最新版本。对于 Laravel 5.6,你需要 php 7.1.3!以上是关于哪个php框架适合共享主机? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在共享主机环境中关闭特定目录的 php safe_mode?
共享主机上的 Websockets:由于共享主机本身或非 php 集成而无法实现?