nginx + php-fpm没有用“<! - ?”转义但是用“<?php” - >逃脱了

时间:2014-01-23 16:42:45

标签: php nginx

我正在将现有的PHP应用程序从Apache 2迁移到nginx服务器而且我遇到了一个问题:nginx在嵌入<?php ?>标签时会执行php,但是当它只是在它时<? ?>个标签。为了在不重写代码的情况下迁移这个应用程序,我怎么能让这个不那么传统的php转义字符变为现实呢?

2 个答案:

答案 0 :(得分:2)

更改您的php配置文件以接受短标签。 Reference

答案 1 :(得分:2)

请停止使用简短的PHP短标签。它是3个字母,可以在将来挽救巨大的痛苦。这是错误的做法。 PHP.net确认了这个here。只需将您的所有<?更改为<?php即可。请查看this问题,了解如何轻松地将整个项目的所有<?更改为<?php。或者,如果您想要一个简单的shell脚本,可以查看henriquemoody's remove-php-short-tags.sh。看起来它可能非常有用。

如果你想要更多的理由从php短标签改为正确的方式只是谷歌“为什么php短标签是坏的”你会看到。 Jetpack 2.0.1就是一个很好的例子。