Kategoriler
Kodlama

SHTML(Server Side Includes) içerisinde PHP kodu çalıştırmak

.shtml, .stm, .shtm(SSI) dosyalarında PHP kodu çalıştırmak için bir yöntem.

Server Side Includes(SSI) yani Linux sunucularda varsayılan olarak .shtml, .stm, .shtm olarak çalışabilen, temelde HTML ile aynı fakat kendine özgü sunucu taraflı kodları da çalıştıran dosya içerisinde PHP kodlarını çalıştırmak aslında çok kolay, bunun için herhangi bir sunucu ayarı veya .htaccess düzenlemesi gerekmez ki önermiyorum da.

Bazen sunucu bir hata veya olay sonrasında kullanıcıya veya sorguya karşılık bir SSI dosyası gösterebilir, bu örneğin 400/404/403/401 gibi hata sayfaları da olabilir, bu durumda SSI dili ile yapılabilenler sınırlı olduğu için daha gelişmiş bir dil olan PHP ile gelen sorgu/ziyaretçiyi hem farklı yerlere yönlendirmek, hem tanımak ve bilgi edinmek veya ona özel farklı veriler göstermek için bu yöntemi kullanabilirsiniz.

Neden?

Bu dilin veya sistemin Apache sunucuda çalışırken diğerlerinden farklı olarak kendine has özellikleri ve kabiliyetleri mevcut olsa da çok güvenilir ve her şeyi yapabileceğiniz bir dil olduğu söylenemez. .shtm dosyaları genelde sunucunun varsayılan hata sayfalarında çalışır ve içerisinde bir PHP kodu çalıştırmak istiyorsanız öncelikle sunucuda Apache mod_include modülünün aktif olduğuna emin olmalısınız, bunun için eğer gerekli ise ana dizindeki .htaccess dosyanız içerisine aşağıdakini eklemek yeterli olacaktır:

Options +Includes

Şimdi hazırız, PHP kodunun çalışmasını istediğiniz .shtml yani Server Side Includes dosyası içerisinde PHP kodlarınızın bulunduğu dosyayı include etmeniz sonrası her şey çalışacaktır, örnek:

<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="utf-8"/>
<!-- Aşağıdaki .php dosyası burada çalışacaktır. -->
<!--#include virtual="/benimphpdosyam.php"-->
<script type="text/javascript">/*** WOLKANCA@GMAIL.COM | SRV
 __         __
/  \.-"""-./  \
\    -   -    /
 |   o   o   |
 \  .-'''-.  /
  '-\__Y__/-'
     `---`
***/</script> 
<title>Örnek SHTML 🦹‍♂️</title>
</head>
<body>
<h1>Bu bir SHTML dosyasıdır.</h1>
</body>
</html>

Burada eklediğimiz kod: <!--#include virtual="/benimphpdosyam.php"-->, include ederken dikkat etmeniz gereken şey SSI‘de include mantığı biraz farklı yani daha doğrusu kullandığı yol şekli mutlak değil / ise ana dizindir ve / başlangıcı olmadan çalışmaz, public_html klasörü içerisinde örneğin dosya tarayıcıda açılır şekilde adresi ne ise adres odur. Daha fazla bilgi için ana kaynak: https://httpd.apache.org/docs/2.4/howto/ssi.html ve bir diğeri https://www.w3.org/Jigsaw/Doc/User/SSI.html

Twitter’dan takip etmeyi unutmayın, kolay gelsin

wolkanca.com’da SHTML(Server Side Includes) içerisinde PHP kodu çalıştırmak veya diğer konular hakkında herhangi bir sorunuz varsa, sosyal medya butonları ile yorum ya da mesaj göndermekten çekinmeyin, SHTML(Server Side Includes) içerisinde PHP kodu çalıştırmak için ya da değil DM kapısı her daim açık. Yazıyı beğendiyseniz paylaşın, daha fazla ilgili gönderi için hemen aşağıdaki menülere göz gezdirebilirsiniz, okuduğunuz için teşekkürler, saygılar sevgiler.

WOLKANCA

Volkan Yılmaz

Digital Marketing & WordPress & SEO - wolkanca mahallesi gmail sokak nokta com.