2015-03-10 3 views
0

Учитывая следующий index.html файл:Почему этот HTML-код не работает?

<html> 
<body> 
<p>Welcome to <?= $_SERVER ['HTTP_HOST']; ?></p> 
</body> 
</html> 

Я ожидал увидеть «Добро пожаловать в EXAMPLE.COM», Все, что я вижу «Добро пожаловать». Что может случиться, если код будет проверен?

+0

Недостаточно информации ... где вы положили код? что вы назвали файлом? это на самом деле работает PHP? и т. д. –

+0

это всего лишь файл index.html ... – adraedin

ответ

3

Это не работает, потому что эта часть не является html (это php), но вы сохранили ее как html-файл, а не как файл php.

переименовать его в index.php и повторить попытку?

+1

Удивительно, что полностью сработало ... derp. Большое спасибо! Есть ли html-версия этой части, поэтому я могу сохранить расширение «.html»? – adraedin

+0

Nah, html не делает ничего такого динамического. Если вам нужен динамический материал - он должен быть php. –

+1

О, BTW - (и потому, что вы выглядите новым здесь), если ответ решил проблему для вас, вы можете пометить ее как «принятую», нависая над ней - и отметка галочки должна появиться слева ... тогда вы щелкните это, и оно будет принято как правильный ответ. –

1

Веб-серверы обычно настроены на запуск PHP только на файлах с расширением .php. Ваш файл index.html будет передан как есть в браузере, который, вероятно, будет игнорировать неизвестные теги PHP. Если вы посмотрите на исходный код веб-страницы, теги, вероятно, будут там.


Если вы должны иметь .html расширение, как правило, можно настроить веб-сервер для запуска PHP на .html файлов. Например, в Apache, вы можете использовать AddType директиву в качестве .htaccess файла или в конфигурации сервера (httpd.conf):

AddType application/x-httpd-php .html 

Однако, это будет работать PHP на все.html файлы (в этом каталоге), что может привести к ненужной нагрузке на сервер.


Намного лучше, чтобы использовать URL-без расширений. В Apache, вы можете использовать DirectoryIndex директиву, чтобы указать список индексных файлов, веб-сервер будет искать:

Options +Indexes 
DirectoryIndex index.html index.php 

Когда браузер запрашивает URL, который заканчивается с косой черты, такие как http://mydomain.example/foo/, сервер будет найдите foo/index.html или foo/index.php в DocumentRoot (или, в противном случае, сгенерируйте список каталогов). Теперь вы можете использовать любой тип индексного файла, подходящий на данный момент, без изменения URL-адресов.

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