запуск php5.5.9 на apache2.4 под Ubuntu 14.04.2 LTS сервер x86_64 мой старый код php имеет <?
в середине, чтобы переключиться с HTML обратно на PHP, но он больше не работает, и <?
просто вывод, как если бы это был HTML. если я изменю это на <?php
тогда вся страница становится пустой. curl в этом случае показывает, что сервер ничего не выводит. это где я пытаюсь вывести IP-адрес клиента.
веб-страница: http://linuxhomepage.com/
или же: http://linuxhomepage.com/index.php
Вы можете увидеть сырой PHP-код здесь: http://linuxhomepage.com/index.txt
если вы получите IPv6-адрес, он не будет работать, так как apache не позволяет мне связать его (я все еще копаюсь с более низким приоритетом).
<?
а также <?php
оба терпят неудачу по-разному. так как я могу сделать эту работу?
Редактировать:
IPv6 работает на Apache сейчас, затем, чтобы получить DNS на IPv6.
Вопрос симилара: PHP 5.5 short_open_tag = на дыре безопасности?
Вы должны изменить короткий открытый тег в вашем php ini на:
short_open_tag=on
<?
вероятно, терпит неудачу, потому что это осуждается.
<?php
Вероятно, это не сбой, но, возможно, где-то в вашем коде ошибка, и отчеты об ошибках на вашем сервере отключены, так что вы просто получаете пустой экран.
Чтобы убедиться в этом, попробуйте что-то простое, например:
<?php
echo 'test';
?>
И убедитесь, что это работает.
<?
просто вывод, как если бы это был HTML.
это потому что short_tags не рекомендуются и отключены по умолчанию
PHP также позволяет открывать короткие теги
<?
(что не рекомендуется, поскольку он доступен только в том случае, если он включен с помощью директивы конфигурационного файла short_open_tag php.ini или если PHP был настроен с параметром —enable-short-tags).
если я изменю это на <?php
тогда вся страница становится пустой.
это, вероятно, потому что у вас есть ошибки на вашей странице PHP (особенно если вы запускаете старый код в новой версии PHP)
пожалуйста, включите отчёт об ошибках — директивы php.ini error_reporting
а также display_errors
Пожалуйста, попробуйте удалить часть, которая вызывает проблему.
На ваш текстовый файл это будет
<?
echo $_SERVER['REMOTE_ADDR']
?>
Если это работает без попытки добавления
<?php echo "TEST"; ?>
Если это также работает, вы можете заменить "TEST"
от $_SERVER['REMOTE_ADDR']
и посмотреть, если это работает.