2009-09-09 31 views
0

这个设置有什么缺点吗?将脚本扩展更改为.php5以执行php 5?

我希望能够运行PHP5过滤器和函数。将文件重命名为something.php5允许我这样做吗?

我的托管服务提供商提出这个建议,而不是升级到PHP5。 默认情况下,仍然是php4的registered_globals ON。

回答

2

更改文件扩展名不会更改安装在服务器上的PHP版本。如果你的主机只有PHP4,那么你只能使用PHP4,除非他们愿意给你PHP5。唯一的办法就是如果你的主机已经运行了PHP5并且它已经被设置为只能使用扩展名为.php5的文件(这是完全可能的场景)。

我想说的第一件事就是创建一个简单的phpinfo文件,如下所示,并将其命名为.php5扩展名并查看它说的是什么。

<?php 
    phpinfo(); 
?> 

phpinfo()将为您提供在文件顶部以粗体显示的PHP版本。因此,如果一个带有.php的文件表示它是PHP 4.x并且一个.php5文件表示它的PHP 5.x,那么你的主机已经安装在服务器上,并告诉Apache使用.php5文件和PHP4的PHP5与.php文件。

并在旁边注意,如果您的主机已启用register_globals并且它们不会关闭它们,我建议将以下内容放在文档根目录中的.htaccess文件中。

php_flag register_globals off 
+0

东西你能不能再帮我了解我的托管服务提供商可以通过意味着“改变脚本扩展.php5到PHP 5执行。默认.PHP仍将是PHP4和兼容性?” – chris 2009-09-09 19:56:34

+0

我已经用一些更多的信息更新了我的答案。对不起,多次编辑。 – 2009-09-09 19:59:59

+0

非常感谢您的解释。主机的确必须安装php5和4,因为phpinfo()和.php5扩展名会返回为php版本5 – chris 2009-09-09 20:02:45

1

您是否允许使用.htaccess文件为每个目录重写这些设置?

如果可以,只需向托管服务提供商询问设置是如何进行的,并仅针对您进行更改。像

Action application/x-httpd-php /path/to/php5