SSI

How to enable html files to display php code

Explore the versatility of hosting php: a step-by-step guide for enabling HTML files to display php code via .htaccess.

When creating your own site, you have many options. The basic files, particularly on Linux servers like the ones used for our hosting accounts, are either generally either HTML (files ending in the extension .html or .htm) or php (files ending in the extension .php) files. HTML is the markup language for displaying content and is not processed on the server side. Php is a programming style language used to create pages that are processed and served from the server. Php files can always read and display HTML code, but HTML does not automatically parse php code. To do so, you will need to make adjustments to your .htaccess file. Once that is done, the php code will display within HTML files without issue. Follow the instructions below as they guide you on enabling html files to display php code via your .htaccess file.

Enabling HTML files to display php code

Thoughts on “ How to enable html files to display php code ”

Nope. I use multiple cpanel instances and in at least one of them (I am nto trying to execute PHP from HTML in any domain all of them) this does nto work. White Screen of death. Tech support on the phone says ‘this’ is out fo the scope of support. Irritating, as it used to work. And it does work in some cpanel instances – all of which are set to php7.2

Thanks for contacting us. Have you tried adding it to .htaccess in a higher directory or changing the PHP version?

I have updated the example code to include the correct syntax for PHP 7.0. You only need to uncomment the line that matches the version of PHP you are using. For PHP 7.0, your .htaccess file will look like the following: AddType text/html .shtml .shtm .htm .html
AddHandler server-parsed .shtml .shtm .htm .html
Options Indexes FollowSymLinks Includes
# Uncomment the version of PHP you have on your server
# Only one of the following can be uncommented
AddHandler application/x-httpd-ea-php70 .shtml
#AddHandler application/x-httpd-php5 .shtml
#AddHandler application/x-httpd-php52 .shtml
#AddHandler application/x-httpd-php54 .shtml
#AddHandler application/x-httpd-php4 .shtml I hope this helps!

Читайте также:  Бинарный and оператор java

How do you do this if your server API is set to CGI/FastCGI? I understand you need to use a php.ini file to do that but I can’t find a similar tutorial on that file.

Hello Ryan, Check out this FAQ -the PHP section. This is the closest thing that I could find that may provide the answer you’re seeking. If you continue to have problems, please let us know. Regards,
Arnel C.

Was this article helpful? Let us know! Cancel reply

  • Website Tutorials
  • Domain Names
  • DNS and Nameserver Changes
  • Email
  • Zend Framework
  • Search Engine Optimization
  • Secure Socket Layer (SSL)
  • Security
  • Server Usage
  • Software
  • SSH and Root Access
  • Troubleshooting Hacked Websites
  • Web Analytics
  • Website Error Numbers
  • Backups and Restorations
  • cPanel
  • Databases
  • DNS and Nameserver Changes
  • eCommerce
  • Email Basics
  • Git
  • Google Tools
  • Hosting Product Guides
  • NGINX
  • Secure Socket Layer (SSL)
  • Security
  • Softaculous
  • SSH and Root Access
  • WebHost Manager (WHM)
  • WordPress
  • WooCommerce

Источник

Html htm php shtml

calendar

08 апреля

heart

11723

question

Комментариев: 0

Сегодня мы раскроем тему индексной страницы /файла и настройку индексной страницы на вашем сайте с помощью файла .htaccess. Рассмотрим сперва само понятие.

И так, индексная страница (файл) это страница, которая открывается по молчанию, когда пользователь делает запрос к любой директории.

Например: пользователь вводит в поиске запрос http://сars/mitsubishi/. Как результат, ему откроется индексный файл, который отвечает данной директории. Если в директории нет индексной страницы, пользователь увидит уведомление об ошибке кода 403.

Существует список индексных файлов:

index.html, index.htm, index.php, index.php3, index.phtml, index.shtml, default.htm или default.html.

Чтобы самостоятельно задать совершенно другой файл индексным, вам необходимо проделать некоторые манипуляции. Сперва создайте в соответствующей директории файл .htaccess, а в нем прописываете:

DirectoryIndex имя_файла

Например: пользователь вводит http://сars/mitsubishi/ и перед ним открывается индексная страница (файл) index.html. Если вы желаете чтобы открылась другая страница, например mitsubishiprice.php, нужно так и указать в файле .htaccess.

DirectoryIndex mitsubishiprice.php

soc-1

Как защитить директорию паролем через .htaccess? Настройка редиректа 301 с www на без www через .htaccess Как заблокировать доступ к сайту с помощью .htaccess? Смена кодировки по умолчанию через .htaccess Настройка переадресации со страницы без www на www через .htaccess Включение gzip сжатия через файл .htaccess Настройка своих страниц ошибок через .htaccess

blog-img-1

calendar

Июнь

heart

72682

blog-img-1

calendar

Июнь

heart

56803

blog-img-1

calendar

Октябрь

heart

53218

blog-img-1

calendar

Март

heart

42997

blog-img-1

calendar

Сентябрь

heart

36187

Источник

Динамические страницы через SSI и PHP

Во всех манулах по SSI рекомендуется создать файлы заголовка, футера и т.д. а потом инклудить (включать) из в каждую страницу. Мало того что это муторно и некрасиво, так ещё и создаёт дополнительные проблемы при при серьёзных изменениях на сайте.

Логичнее было бы автоматически вставлять шаблон для всех страниц сайта с определённым (дабы не портить текстовые и прочие не HTML страницы на сайте) расширением. Я расскажу вам как это сделать.

Читайте также:  Java prepared statement batching

Способ одинаково работает как на SSI так и на PHP. Он дико прост и мне странно что я не смог нагуглить готовое решение, возможно плохо искал, но вместо того чтобы тратить время на поиск, я сделал всё сам.

Простейщее использование шаблонов на SSI и PHP

Я последовательно приведу листинги необходимых файлов с пояснениями.

Любой HTML фрагмент - подвал сайта
Любой HTML фрагмент - шапка сайта
Любой HTML фрагмент - чистый контент, без инклюдов и т.п.

engine.html — вариант на SSI

engine.php — вариант на PHP

В обоих обработчиках важно обратить внимание на переменную ext. Как вы догадались, это расширение файлов контента, физических файлов на сервере. В ссылках на сайте мы будем использовать другое расширение. Конечно вы можете использовать свои расширения, важно лишь то чтобы расширение физических файлов и ссылок сайта не совпадали. Варианты: htm, html, shtml, phtml, php. Вы можете использовать любые другие, но внесите изменения в конфигурацию сервера и настройку обработчика. Расщирение файла обработчика может быть любым, но оно не должно совпадать с расщирением ссылок на сайте.

Options -Indexes DirectoryIndex index.phtml AddHandler server-parsed .html .htm #AddHandler application/x-httpd-php .php .html .htm RewriteEngine On RewriteBase / #uncoment for site on SSI #RewriteRule ^$ engine.html?index [QSA,L] #RewriteRule ^(.*)/$ engine.html?$1/index [QSA,L] #RewriteRule ^(.*).(shtml)$ engine.html?$1 [QSA,L] #uncoment for site on PHP RewriteRule ^$ engine.php?index [QSA,L] RewriteRule ^(.*)/$ engine.php?$1/index [QSA,L] RewriteRule ^(.*).(phtml)$ engine.php?$1 [QSA,L]

Это самое интересное, поясню построчно:
Options -Indexes — отключаем возможность просматривать листинг каталога
DirectoryIndex index.phtml — важный параметр, расширение должно соответствовать расширениям в ссылках вашего сайта, не физическим файлам.
AddHandler server-parsed .html .htm — только для SSI включаем обработку файлов .html .htm, как .shtml, можете добавить свои.
#AddHandler application/x-httpd-php .php .html .htm — раскомментируйте, если вы используете PHP версию и у вас «не работает», хотя обычно серверы по умолчанию на обработку этих файлов.
RewriteEngine On — активируем модуль для преобразования средствами Апача
RewriteBase / — необязательная строка, зависит от настроек сервера, необходима, например, для доменов 3го уровня.
Далее следуют группы правил преобразования для SSI и PHP, конечно оба блока вам не нужны, поэтому можно оставить только нужный, а другой удалить или закомментировать (символом # в начале строки). Обратите внимание, в примере закомментированна SSI версия.
Правил по 3, они действуют на корень сайта, каталоги и файлы с указанным (shtml или phtml) расширением соответственно. Если в ссылках на сайте другое расширение, измените его тут и в директиве DirectoryIndex.

Для проверки работоспособности создайте файлы с указанными именами, скопирйте в них содержимое, загрузите на сервер. Вы увидите результат footer.html, header.html и index.html как 1й HTML страницы.

Читайте также:  Html wrap div in link

Накладные расходы

Если вы осуществляете переезд сайта, как былов моём случае, то помимо переименовки файлов, необходимо внести изменение в логику, например переменная $DOCUMENT_NAME перестанет отображать текущую страницу, однако она легко заменяется переменной $mypage из обработчика.

Так же мне пришлось изменить расширения в инклудах внутри шаблона — привести в соответствии с физическими файлами.

Ну и конечно, вычистить все инклуды в отдельных страницах, оставив чистый контент.

Используйте свои шаблоны шапки и подвала сайта, и добавляйте функционал в обраточик.

Источник

Файл с расширением .shtml что за формат?

SmthTo

Веб-страница, написанная в HTML, содержащаяся на серверной стороне. Обрабатывается с помощью веб-сервера перед отправкой пользовательскому браузеру. Может ссылаться на другие файлы на сервере, например, «header.shtml» или «_footer.shtml».

sergei2210

А практическое применение какое то что я прочитал это просто еще одни файл, почему нельзя сделать все в html

TAbrahamyan

sergei2210

SilverStorm, Скажите я правильно понял, что я создаю например шаблонный подвал для сайта, без html
head и делаю файлы с расширение shtml и вставляю #include file=»footer.html»
То есть по сути это include php
Из php я знаю только это include php так как было удобно вставлять дублирующий контент.

TAbrahamyan

Сергей Ракипов,
В современном вебе, что бы сохранить принцип DRY то есть не повторять свой код, люди придумали компоненты. То есть ты один раз пишешь код и можешь использовать его везде.

К примеру я один раз написал footer.html. И могу на каждой странице ссылаться на этот файл, без надобности снова написать код.

Да вы правы это чем то похоже на include php. Но когда еще php не было, был только голый html, надо было как нибудь обрабатывать переменные на сервере, для этого и придумали язык SSI.

То есть SSI это язык который понимает сервер с форматом файла .shtml и при виде такого файла он обрабатывает этот файл.
Как и к примеру OS понимает что фото имеете формат .jpg и открывает его в программе для просмотра изображений.

То есть если в файле html используется язык SSI то, что бы сервер понял этот язык и обрабатывал его надо написать .shtml.

К примеру как и в любом другом языке в языке SSI есть условные выражения.

       

Hello Admin

Hello World!

Если назвать этот файл просто index.html то пользователь увидит.

А если .shtml то сервер обработает этот файл, выполнит условие.

Если IP у пользователя 127.0.0.1 то 

Hello Admin

либо

Hello World!

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

Источник

Оцените статью