şimdi ben size ısrarla soruyorum tekrar, anlama özürlü olduğum için ben bulamadım siz bi zahmet gösterirseniz sevinirim.
Şimdi burda yani sizin yazınızda belirtilen bu kodun hangi sayfalara ve o sayfaların nerelerine koyacağım hususunu Yüce Şahsınızdan özür dileyerek nerde açıkladığınızı göstermenizi talep ediyorum yüksek müsadelerinizle;
Merhaba,
osCommerce mimarisinde bağlantılar SSL durumuna göre otomatik belirlenir.
Örneğin catalog/includes/configure.php dosyasını açıp
define('ENABLE_SSL', false); değerini define('ENABLE_SSL', true); değiştirdiğinizde (false pasif, true aktif demek), sitenizde SSL ile açılacak sayfalarda (üye işlemleri, satınlama gibi) içerik https protokolü üzerinden çağrılır.
osCommerce tüm protokol srounlarını ortadan kaldırmak için aşağıdaki şekilde bağlantıları çağırır.
tep_href_link(login.php, '', 'SSL')
Yukarıda tep_href_link fonksiyonu login.php sayfasını çağırırken SSL eğer aktif ise bu sayfayı https üzerinden ekrana basar.
Bu işlemi sayfanın sonundaki fonksiyon yapar.
Sitenizde güvenli sayfaları çağırıken uyarı mesajı almamak için aşağıdaki yöntemi uygulayabilirsiniz.
Örneğin sayfamıza bir flash dosyası yayınlayalım. Flash dosyamız ana dizinde test.swf olsun.
echo tep_href_link('test.swf');
Eğer sitenize bu şekilde ekleme yaparsanız güvenli sayfalarda güvensiz öğe uayrısı almazsınız. Çünkü güvenli sayfada içerik https protokolünden gelirken sizin siteye
.... şeklinde eklediğiniz içerik veya dosya bu kuralı bozar ve güvenlik ihlali oluşturur.
Kod:
--------------------------------------------------------------------------------
//// // The HTML href link wrapper function function tep_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true) { global $request_type, $session_started, $SID; if (!tep_not_null($page)) { die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine the page link!<br><br>'); } if ($connection == 'NONSSL') { $link = HTTP_SERVER . DIR_WS_HTTP_CATALOG; } elseif ($connection == 'SSL') { if (ENABLE_SSL == true) { $link = HTTPS_SERVER . DIR_WS_HTTPS_CATALOG; } else { $link = HTTP_SERVER . DIR_WS_HTTP_CATALOG; } } else { die('</td></tr></table></td></tr></table><br><br><font color="#ff0000"><b>Error!</b></font><br><br><b>Unable to determine connection method on a link!<br><br>Known methods: NONSSL SSL</b><br><br>'); } if (tep_not_null($parameters)) { $link .= $page . '?' . tep_output_string($parameters); $separator = '&'; } else { $link .= $page; $separator = '?'; } while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1); // Add the session ID when moving from different HTTP and HTTPS servers, or when SID is defined if ( ($add_session_id == true) && ($session_started == true) && (SESSION_FORCE_COOKIE_USE == 'False') ) { if (tep_not_null($SID)) { $_sid = $SID; } elseif ( ( ($request_type == 'NONSSL') && ($connection == 'SSL') && (ENABLE_SSL == true) ) || ( ($request_type == 'SSL') && ($connection == 'NONSSL') ) ) { if (HTTP_COOKIE_DOMAIN != HTTPS_COOKIE_DOMAIN) { $_sid = tep_session_name() . '=' . tep_session_id(); } } } if ( (SEARCH_ENGINE_FRIENDLY_URLS == 'true') && ($search_engine_safe == true) ) { while (strstr($link, '&&')) $link = str_replace('&&', '&', $link); $link = str_replace('?', '/', $link); $link = str_replace('&', '/', $link); $link = str_replace('=', '/', $link); $separator = '?'; } if (isset($_sid)) { $link .= $separator . tep_output_string($_sid); // Patch 2.2MS2-051113 added tep_ } return $link; }
--------------------------------------------------------------------------------
Umarım açıklamalarım anlaşılır olmuştur. Kolay gelsin.