在服务器端配置PHP框架

时间:2010-01-22 07:30:46

标签: php zend-framework codeigniter

使用PHP框架(CodeIgniter,Zend)是否需要特殊的服务器端设置?如果是的话,是否有一个不需要的PHP框架?

目的是使用仅支持普通PHP的托管服务器(没有安装框架 - 如果有意义的话),并且仅在开发机器上使用提到的框架,然后将其预处理(“编译”)到普通的PHP。

[编辑]

对你们所有人:抱歉新手问题,我想我弄错了。到目前为止,我只在.NET中工作过,而且我还没有在PHP中从头开始做任何事情。对于我应该做的这个小项目,我想学习并使用CodeIgniter,因为它看起来像一个轻松的MVC框架,我可以快速得到结果。

在开始之前,我想咨询托管服务提供商(我的客户已经购买了一年的托管服务)表示他们只支持Zend 。那么,我猜那是胡说八道呢?

[编辑2]

要完成我的问题,以下是他们的托管包提供的内容:

  • PHP 5或PHP 4
  • 的Perl
  • CGI
  • 的Python
  • Tomcat / JSP Tomcat 5.5.9 / Servlet 2.4 / JSP 2.0
  • FrontPage扩展
  • Ruby On Rails
  • PHP / Zend优化器
  • PHP / IonCube
  • Fantastico
  • DB:MySQL Server 5,PostgreSQL Server 8

确切地说,我的问题是(因为我毕竟是新手):

问:你支持哪些PHP框架(Zend,CodeIgniter ......)?
答:我们支持Zend,但不支持CodeIgniter

现在我知道问题本身有点愚蠢,所以我可能会再次与他们联系。

6 个答案:

答案 0 :(得分:6)

我知道没有php框架需要任何特殊的服务器端设置。 PHP框架就是这样:只有普通的PHP,就像你所说的那样。 PHP框架只不过是已编写的PHP代码,您可以在其上构建更多代码。没什么特别的。

人们有时会问'如何安装'这个或那个框架的问题,这个框架源于同样的错误观念,即框架是某种需要复杂的分布式安装例程的捆绑软件。都不是。只是你没有写自己的代码。因为你只需要上传(或下载)到服务器。完成。

编辑后

[编辑]: 我稍微怀疑你的托管公司的能力。你可能会对他们产生误解,因为'Zend'通常意味着Zend Optimizer或Zend Guard等。对于PHP框架,您的主机不需要支持或不支持它们。完全取决于您上传到该主机的PHP代码以及编写该代码的人员。

某些托管公司提供框架支持的方式是框架已在其服务器上可用并由主机更新。肯定有一些可以像php.ini设置一样优化的东西。但总的来说,如果没有这些优化设置,它也会起作用。

我几乎从不接受客户已购买的托管服务。当我写一个报价时,我附上了我选择托管的字符串。如果我对客户已经拥有的东西感到满意,对他来说就更好了。

答案 1 :(得分:3)

您需要为CodeIgniter配置的唯一设置是$ config ['base_url'],它用于构建链接和表单操作。然后你应该好好去,因为CodeIgniter(以及所有其他框架)只是PHP而已。

尽管如此,当然还有值得注意的环境问题。如果您从本地主机迁移到安装完全不同的服务器,那么当然会有需要更改的内容,例如$ config ['uri_protocol'],因为有时您会得到404,空白页或默认控制器加载当你看其他页面时。通常可以通过轻击选项上方列出的每个uri_protocol选项来修复此问题。这不是很常见,只需记住一些。

最后,当然,不要忘记chmod你的可写上传文件夹并保持你的数据库设置正确。

看看我关于“how to get CodeIgniter working on different production environments”的文章,而不必过多地讨论db config。

答案 2 :(得分:1)

请参阅EZMVC,它不需要服务器端设置/处理。

答案 3 :(得分:1)

AFAIK唯一与服务器无关的是重写链接,如Apache,nginx,IIS等,都有不同的重写引擎/语法。

答案 4 :(得分:0)

我已经研究过许多php框架,例如Zend框架,Cakephp,codeigniter和YII。其中我最喜欢YII(http://www.yiiframework.com),因为它易于学习,纯粹面向对象,并且几乎像Ruby on rails框架一样工作。它也有很好的文档,速度非常快。 Yii与codeigniter不同,它仅适用于PHP 5,它具有自动加载类等功能。

但框架的唯一问题是它们需要配置设置。如果没有一个配置文件,你就无法使它工作。

答案 5 :(得分:0)

你尝试过cakephp吗? 我正在使用yiiframework,我需要用php 4做一个项目,所以我也使用了我喜欢的cakephp。