2014-01-23 3 views
0

Я переношу существующее приложение PHP с сервера Apache 2 на nginx, и я столкнулся с проблемой: nginx выполнит php-файл, когда он встроен в теги <?php ?>, но не тогда, когда это всего лишь <? ?> теги. В интересах переноса этого приложения без перезаписи кода, как я могу использовать этот менее обычный символ escape-кода php?nginx + php-fpm не экранируется с помощью <<? но IS экранируется с помощью «<? php»

+1

http://www.php.net/manual/en/ini.core.php#ini.short-open-tag Это не имеет ничего общего с nginx. это просто настройка конфигурации PHP. –

+1

Возможный дубликат [Как включить короткие теги PHP?] (Http://stackoverflow.com/questions/2185320/how-to-enable-php-short-tags) –

+0

Не используйте короткие теги простыми. Откройте каждый файл .php в блокноте ++ (или другом редакторе), чтобы найти и заменить все события « Dave

ответ

2

Измените конфигурационный файл php, чтобы принять короткие теги. Reference

2

Пожалуйста, прекратите использование коротких коротких тегов PHP. Это 3 письма, которые могут спасти огромные боли в будущем. Это неправильный способ сделать это. PHP.net подтверждает это here. Просто измените все свои <? на <?php. Пожалуйста, просмотрите this вопрос, как вы можете легко изменить все ваши <? до <?php для всего проекта. Или, если вам нужен простой сценарий оболочки, вы можете проверить henriquemoody's remove-php-short-tags.sh. Похоже, это может быть очень полезно.

Если вам нужно больше причин, чтобы изменить короткие короткие теги PHP на правильный путь, просто Google «Почему короткие теги PHP являются плохими», и вы увидите. Jetpack 2.0.1 - хороший пример.

+0

Да! Настоятельно рекомендуется использовать стандартную форму тега (ни ** короткие теги **, ни ** теги asp **) –

Смежные вопросы