Joomla should correctly define http/https via NLB. Change JURi::base() to detect HTTPS by using HTTP_X_FORWARDED_PROTO instead.
On NLB apache returns $_REQUEST[https] empty,by having live_site configuration variable not setted, fallback to the http protocol on https site.
PHP Built On Linux 3.0.101-0.47.71-default #1 SMP Thu Nov 12 12:22:22 UTC 2015 (b5b212e) x86_64
Database Version 5.5.47
PHP Version 5.3.17
Web Server Apache/2.2.12 (Linux/SUSE) PHP/5.3.17
WebServer to PHP Interface apache2handler
Joomla! Version Joomla! 3.4.6 Stable [ Ember ] 15-December-2015 11:11 GMT
Joomla! Platform Version Joomla Platform 13.1.0 Stable [ Curiosity ] 24-Apr-2013 00:00 GMT
Labels |
Added:
?
|
Hi Brian! Sorry for missed details. NLB is a Network Load Balancer.
http://stackoverflow.com/questions/11650640/why-isnt-serverhttps-set-to-1 here are some similar issues.
I think this part of the code fallback to the HTTP even if you are in HTTPS
https://github.com/joomla/joomla-cms/blob/staging/libraries/joomla/uri/uri.php#L65-L67
Oh! I have just found this - exactly the same issue and looks like still not resolved
https://developer.joomla.org/joomlacode-archive/issue-30885.html
Category | ⇒ | Libraries Router / SEF |
Basically the SSL is terminated at the load balancer, (The load balancer holds the SSL Certificate and intercepts all traffic on https/443 and then acts as a proxy to the webserver on http/80) and then all traffic from the load balancer to the web server is NOT https (and therefor theoretically insecure data passed over a network from the load balancer to the web server) as the web server is running Joomla on standard http/80
Seen this repeatedly over the years
Theoretically its an easy fix - but one that takes a lot of set up (network wise) to replicate, debug, and code for all cases, and a one that takes a lot of testing, for all known use case scenarios...
This is still an issue! I have now fixed this by just bluntly adding $_SERVER['HTTPS'] = 'on'; in the main index.php file, because all traffic is forced to SSL anyways, but I am waiting for a solution!
I have my Joomla CMS on Amazon Elastic Beanstalk with PHP 7.0...
Status | New | ⇒ | Needs Review |
Status | Needs Review | ⇒ | Pending |
Is there any progress on this?
I am also having this issue (being behind a loadbalancer that offloads SSL, but I'm not on AWS).
My current workaround is placing $_SERVER['https'] = 'on';
at the top of my index.php but that solution might break after an update.
Any update would be much appreciated!
Labels |
Added:
J3 Issue
|
I've made a commit to joomla-framework/application (joomla-framework/application#82), which should resolve this.
Does someone know of any more places this should be fixed?
I was thinking about https://github.com/joomla-framework/uri/blob/master/src/AbstractUri.php -> isSSL(), but i don't know if it should be changed there.
The Uri object shouldn't be changed. That should be reporting the state of the URI which the object represents, not the global request.
Closed_By | alikon | ⇒ | joomla-cms-bot |
Labels |
Status | Pending | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2019-05-22 10:33:06 |
Closed_By | ⇒ | alikon | |
Labels |
Set to "closed" on behalf of @alikon by The JTracker Application at issues.joomla.org/joomla-cms/9756
closing as joomla-framework/application#82 has been merged
closing as joomla-framework/application#82 has been merged
Excuse my ignorance - what is NLB?