PHP 짧은 태그(Short Open Tag)를 활성화하면 PHP 코드를 시작할 때 <?php 대신 <?를 사용하는 것이 허용됩니다. 이 옵션은 PHP 5.3.0 버전 이상에서는 기본적으로 비활성화되어 있습니다. PHP 짧은 태그를 사용하면 코드를 조금 더 간결하게 작성할 수 있지만, 모든 서버 환경에서 이 옵션이 활성화되어 있는 것은 아니기 때문에 문제를 일으킬 수 있습니다. 그러므로 PHP 짧은 태그는 사용하지 않는 것이 바람직합니다. 다만, PHP 5.4.0 이상에서는 `<?=`와 같은 PHP echo 단축 태그는 `short_open_tag` 설정에 관계없이 여전히 사용이 가능합니다.
- <? ... ?> 태그는 사용하지 않는 것이 바람직
- <?=는 PHP 5.4.0 이상에서 사용 가능. (하지만 <?=도 사용하지 않는 것이 좋다고 하시는 분이 계시네요. 저는 단축 태그 대신 <?php echo ...?>를 사용한 편입니다.)
클라우드웨이즈에서도 기본적으로 Short Open Tag가 비활성화되어 있습니다. 가급적 [**<? ... ?>**] 대신 [**<?php ... ?>**]를 사용하는 것이 바람직하지만 PHP 짧은 태그를 허용해야 하는 경우 서버 설정에서 이 옵션을 활성화할 수 있습니다.
클라우드웨이즈(Cloudways): PHP 짧은 태그(<? ... ?>) 활성화하기
클라우드웨이즈에서 운영되는 워드프레스에서 PHP 짧은 태그([**<? ... ?>**])를 사용하면 워드프레스 사이트에서 치명적인 오류가 발생하고 다음과 비슷한 에러 메시지가 표시될 수 있습니다.
Parse error: Unclosed '{' on line 127 in /home/123456.cloudwaysapps.com/xyzabcde/public_html/wp-content/themes/generatepress/functions.php on line 130
에러가 발생하는 파일을 확인하여 만약 짧은 태그([**<? ... ?>**])의 사용으로 인해 문제가 발생한다면 [**<?php ... ?>**] 형식으로 바꾸면 문제가 해결될 것입니다.
짧은 태그가 너무 많이 사용되어 일일이 수정하는 것이 어렵거나 당장 에러가 발생하지 않도록 해야 한다면 `short_open_tag` 옵션을 활성화할 수 있습니다.
짧은 태그를 허용하려면 서버 관리(Sever Management) 페이지로 이동하여 Settings & Packages » Advanced 탭에서 Short Open Tag 옵션을 활성화하면 됩니다. 이 옵션은 기본적으로 아래 그림과 같이 비활성화되어 있습니다.
Short Open Tag 옆의 토글 버튼을 클릭하여 활성화/비활성화할 수 있습니다. 워드프레스를 사용하는 경우 보통은 이 옵션을 비활성화해도 문제가 되지 않습니다. (저는 이 옵션을 비활성화한 상태인데, 많은 플러그인과 테마에서 이 때문에 오류가 발생한 적은 없습니다.)
마치며
이상으로 클라우드웨이즈에서 PHP 짧은 태그를 허용하는 방법에 대하여 살펴보았습니다.
코딩을 할 때 처음 들이는 습관이 중요한 것 같습니다. 처음부터 단축 태그 대신 <?php를 사용하는 습관을 들이는 것이 바람직합니다.
참고
https://avada.tistory.com/3269
https://avada.tistory.com/3046