I just want to post this for everyone who want to set https on their site. And you should for better ranking on Google.
Do the following:
First get free ssl > cloudeflare.com (read the tutorials if you cant manage)
do not change config.inc.php file (ssl off) - this should be repaired by developers
Now, thanks to ROB do the following steps:
https://pkp.sfu.ca/support/forum/viewtopic.php?t=13259
-
find and change code in file: /lib/pkp/classes/core/PKPRequest.inc.php
-
change code, for version 2.4.8.1. line 358:
function getProtocol() {
$_this =& PKPRequest::_checkThis();
/* if (!isset($_this->_protocol)) {
$_this->_protocol = (!isset($_SERVER['HTTPS']) ||
strtolower_codesafe($_SERVER['HTTPS']) != 'on') ? 'http' : 'https';
HookRegistry::call('Request::getProtocol', array(&$_this-
>_protocol));
}
return $_this->_protocol; */
if (!isset($_this->_protocol)) {
/* ok first condition is "true" (it aint set) and second is true as its nothing so not
equal to 'on' so outcome will always be "http" */
/* So line below removed and replaced by line below as in my setup the server is
behind a proxy see ZenDesk ticket #3473 by RCP dec 2014 */
/* HTTP_X Etc. var is something added here to pass on the actual protocol as its
hidden by the by RCP dec 2014 */
/* $_this->_protocol = (!isset($_SERVER['HTTPS']) || strtolower_codesafe($_SERVER
['HTTPS']) != 'on') ? 'http' : 'https'; */
HookRegistry::call('Request::getProtocol', array(&$_this->_protocol));
}
$_this->_protocol = $_SERVER['HTTP_X_FORWARDED_PROTO'];
return $_this->_protocol;
}
Regards,
Vaso
metall-mater-eng.com , now https://metall-mater-eng.com