Users running a non-download version of Vanilla (pulled from github), on branch release/2019.016 or master from the last 2 weeks should upgrade to release/2019.017 or latest master for security reasons. Downloaded official open sources releases are not affected.
Please upgrade here. These earlier versions are no longer being updated and have security issues.

[SOLVED] ProxyConnect doesn't work and making forum slow

edited June 2011 in Vanilla 2.0 - 2.8
I have just moved the site I'm developing over to the production server, and the problem I have is that as soon as I activate ProxyConnect in the Dashboard, loading is slow (always about 21 seconds) across the forum regardless of the login state of the user, and ProxyConnect isnt detecting that the user is logged in. The site uses CodeIgniter 2.0.1, Vanilla 2.0.17.8 and ProxyConnect 1.8.4 and I've checked the server meets Vanilla requirements. It all works fine on the development machine.

Any ideas what could be wrong?

Comments

  • ToddTodd Chief Product Officer Vanilla Staff
    Are Vanilla and your CodIgniter site on the same server? If so, you may be having a problem with php sessions.

    Basically, Both processes are trying to read from the session file and it's locked.

    The latest version of ProxyConnect fixes this, but you can also look through class.proxyauthenticator.php for any occurrence of a call to ProxyRequest and put the following line before it:
    @session_write_close();
  • I've fixed it! Thanks @Todd, I've added that in, but in the end I found out the problems were a result of the cURL requests to the authentication URL failing. The site and forum are on the same server, which is behind a reverse proxy. All it needed was the following line amongst the other cURL settings (inserted at line 1269) in the ProxyRequest function in functions.general.php to get the cURL requests through the proxy server:

    curl_setopt($Handler, CURLOPT_PROXY, 'proxyservername:port');

    I also added this line to the ProxyHead function in the same file (inserted at line 1133), but wasn't sure if there are any other places it would be needed. @Todd, do you know of anywhere else I would need to include this?
  • ToddTodd Chief Product Officer Vanilla Staff
    I think those are the only two.
  • Great thanks.
  • edited July 2011
    I tried upgrading to 2.0.1.8B and got an error that caused Vanilla Forum from even displaying so I rolled back to 2.0.1.7.10.

    So, I am using Vanilla 2.0.1.7.10. I have PHP cURL extension activate. When I click on ProxyConnect in the plugin list I get the following error. Any Help is appreciated. I really need to get a single log in for a my website. Does this look like a permissions issue?

    "The "Gdn_PluginManager" object does not have a "xAvailablePluginFolders" method." LOCATION: C:\wwwroot\mydomain.com\SubDomains\forum\library\core\class.pluggable.php > 163: // Make sure that $ActualMethodName exists before continuing: > 164: if (!method_exists($this, $ActualMethodName)) { > 165: // Make sure that a plugin is not handling the call > 166: if (!Gdn::PluginManager()->HasNewMethod($this->ClassName, $ReferenceMethodName)) >>> 167: trigger_error(ErrorMessage('The "' . $this->ClassName . '" object does not have a "' . $ActualMethodName . '" method.', $this->ClassName, $ActualMethodName), E_USER_ERROR); > 168: } > 169: > 170: // Make sure the arguments get passed in the same way whether firing a custom event or a magic one. > 171: $this->EventArguments = $Arguments; BACKTRACE: [C:\wwwroot\mydomain.com\SubDomains\forum\library\core\class.pluggable.php] PHP::Gdn_ErrorHandler(); [C:\wwwroot\mydomain.com\SubDomains\forum\library\core\class.pluggable.php 167] PHP::trigger_error(); [C:\wwwroot\mydomain.com\SubDomains\forum\library\core\class.pluggable.php 167] Gdn_Pluggable->__call(); [C:\wwwroot\mydomain.com\SubDomains\forum\plugins\ProxyConnect\class.proxyconnect.plugin.php 58] Gdn_PluginManager->AvailablePluginFolders(); [C:\wwwroot\mydomain.com\SubDomains\forum\library\core\class.pluginmanager.php 432] ProxyConnectPlugin->SettingsController_ProxyConnect_Create(); [C:\wwwroot\mydomain.com\SubDomains\forum\library\core\class.dispatcher.php 290] Gdn_PluginManager->CallNewMethod(); [C:\wwwroot\mydomain.com\SubDomains\forum\index.php 38] Gdn_Dispatcher->Dispatch();
  • edited July 2011
    I switched over to ProxyConnect 1.8.4 from 1.9.7 and it worked perfectly with Vanilla 2.0.1.7.10.
    Fantastic. You guy have developed a great forum app.

    I hope this is helpful to someone else.

    Much thanks
Sign In or Register to comment.