Forum Moderators: coopster

Message Too Old, No Replies

PHP value for HTTPS

looks like my PHP has no value for it? Odd...

         

henry0

6:35 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I am installing a “CubeCart” (On a dedicated server), my cart and DB work fine however when I try to get cranked on the HTTPS/SSL
I create an endless loop
I did run a test
<?php
echo $_SERVER["HTTPS"];
// if return 0 my php environment doesn't give a value for
// $_SERVER["HTTPS"]
?>
It returned 0
Reason is that it looks like the server/php doesn't have a value for that variable then it will never detect it and CubeCart will go into a continious loop.

any idea on what my next move could be?
Thanks

whoisgregg

9:37 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



$_SERVER['SERVER_PORT']

henry0

9:48 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



80
is returned (ok)
Thanks

coopster

9:49 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



Looks to me like SSL is not enabled or not running on that box, or am I missing something obvious here?

henry0

10:00 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Well it is
I actually run a HTTPS form on that site
and I can open anything that I prefix with HTTPS and the rest of the SSL address

whoisgregg

10:08 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I would expect that $_SERVER['SERVER_PORT'] would return 443. (It could return something else, but not 80.) If it is returning port 80, I'm pretty sure HTTP is *not* enabled.

whoisgregg

10:09 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



can open anything that I prefix with HTTPS and the rest of the SSL address

That just means that your HTTPS site is configured to point to the same directory as your HTTP site. They should still be returning different ports.

henry0

10:16 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Thanks whoisgreg
I would expect that $_SERVER['SERVER_PORT'] would return 443. (It could return something else, but not 80.) If it is returning port 80, I'm pretty sure HTTP is *not* enabled.

I do not get it
what do you mean by
<<<
I'm pretty sure HTTP is *not* enabled.
>>>
do you mean HTTPS?

jatar_k

10:22 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



yes, I believe he meant HTTPS

henry0

10:25 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Hmm, now it all makes sense
let's warm up the phone :)
and indeed thanks all!

jatar_k

10:27 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



just for reference sake if you ever need to know port numbers, I keep this in my bookmarks

[iana.org...]

henry0

10:36 pm on Dec 21, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Great ref we should all have it handy
thanks

whoisgregg

1:00 am on Dec 22, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I did mean HTTPS. Sorry for the confusion. :/

I shouldn't post when I'm walking out the door to get dinner. I'm too focused on what I am going to eat. :)

henry0

8:13 pm on Dec 22, 2005 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Here is a way around to the problem

<?
function detectSSL(){

if($_SERVER["HTTPS"] == "on"){

return TRUE;

} elseif ($_SERVER["HTTPS"] == 1){

return TRUE;

} elseif ($_SERVER['SERVER_PORT'] == 443) {

return TRUE;

} else {

return FALSE;

}

}

?>