You are here: Re: [PHP] how to check http:// or https:// ? « PHP « IT news, forums, messages
Re: [PHP] how to check http:// or https:// ?

Posted by Jochem Maas on 08/06/05 19:20

afan@afan.net wrote:
> Right. Tested and found $_SERVER['HTTPS'] has to be 'on' :)
>
> But, there is something in the code Jochem wrote that bothers me for a
> while:
>
> if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') {
> echo 'you are secure(-ish?)'; }
>
> Doesn't
> $_SERVER['HTTPS']=='on'
> automatically means
> isset($_SERVER['HTTPS'])
> ?
>

indeed - I'm a bit of correctness freak like that - without the isset
an E_NOTICE is generated - which you could supress:

if('on' == @$_SERVER['HTTPS']) {
// yes!
}

(others are speed freaks - and will
probably go for the E_NOTICE :-) - although I have no idea whether thats even any faster
than calling isset() as the E_NOTICE generation must all have _some_ overhead,
and how error supression affects performance. regardless the difference if probably
almost immeasurable.)

> I mean, if $_SERVER['HTTPS'] exists doesn't mean it's equal to 'on'
> but if $_SERVER['HTTPS'] == 'on' IT MEANS $_SERVER['HTTPS'] exists
>
> why then
> if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on')
>
>
> -afan
>
>
> Jochem Maas wrote:
>
>> Marco Tabini wrote:
>>
>>> On 8/5/05 2:43 PM, "afan@afan.net" <afan@afan.net> wrote:
>>>
>>>
>>>> Thanks Marco!
>>>> :)
>>>>
>>>> I was looking for something like this on phpinfo() but didn't found?
>>>
>>>
>>>
>>>
>>> That's because it shows up only if you are under HTTPS! :-)
>>
>>
>>
>> AFAICT tell you should check whether the value is actually set to 'on'
>> (IIRC a post by Rasmus):
>>
>> e.g.
>>
>> if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') {
>> echo 'you are secure(-ish?)'; }
>>
>> SIDENOTE REGARDING BEEBLEX.COM:
>>
>> I just added a bookmark in firefox to beeblex.com as follows
>>
>> http://beeblex.com/search.php?d=ALLDB&s=%s
>> and I gave it a keyword of 'beeb'
>>
>> now I can go to firefox and type 'beeb HTTPS' to get an direct hit -
>> so now there is no excuse not to be using Marco's cool new resource :-)
>>
>>>
>>>
>>> Marco
>>>
>>>
>>>>
>>>> -afan
>>>>
>>>> Marco Tabini wrote:
>>>>
>>>>
>>>>> IIRC, if you're using Apache you can check
>>>>>
>>>>> If (isset ($_SERVER['HTTPS']))
>>>>>
>>>>> You can also check this thread:
>>>>>
>>>>> http://beeblex.com/lists/index.php/php.general/190410?h=%24_SERVER%5B%27HTTP
>>>>>
>>>>> S%27%5D
>>>>>
>>>>> --
>>>>> BeebleX - The PHP Search Engine
>>>>> http://beeblex.com
>>>>>
>>>>> On 8/5/05 2:05 PM, "afan@afan.net" <afan@afan.net> wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> Hi,
>>>>>> I need to check does URL use http or https?
>>>>>>
>>>>>> Right now I use this code:
>>>>>>
>>>>>> if(preg_match('/https:/', $_SERVER['SCRIPT_URI']) == false)
>>>>>> {
>>>>>> header('location: [URL]https://www.test.com/test.php[/URL]');
>>>>>> exit;
>>>>>> }
>>>>>>
>>>>>> but I am sure there is much better solution.
>>>>>> :)
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>
>>>
>>
>>
>>
>>
>

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация