OpenEMR installation help

toledomed wrote on Tuesday, June 21, 2011:

Hi,
I’m not sure where I’m going wrong, but it doesn’t seem to be working correctly.

I have installed OpenEMR on a Linux shared hosting plan at Godaddy. Setup goes fine, and when it brings me to the login page, it shows this: (my login page)
http://www.toledomed.com/emr

saying several things cannot be found. I am not sure what to do here to get it to work. Does it have anything to do with absolute hosting path?

Any suggestions are appreciated. Thanks

agalluzzo wrote on Friday, July 08, 2011:

I just did a setup on GoDaddy.  Did you run setup.php? Any errors?

agalluzzo wrote on Wednesday, July 13, 2011:

I looked at this again. It looks like the same issue we saw.  The webserver_root and web_root do not automatically resolve correctly and need to be set in globals.php, around line 105.

toledomed wrote on Wednesday, October 26, 2011:

agalluzzo,
I went into globals and manually set both of those directories, and that worked perfectly. However, now I have a “Site ID missing from session data!” error that keeps occurring. Any ideas?

cverk wrote on Thursday, October 27, 2011:

If this gets figured out, a set of directions for the wiki would be nice.  I have looked at hosting and GoDaddy seems to be the best price at about $30/month.  If you purchase hosting you can get client certificates,a domain,and static IP which is all the stuff it takes to make a secure patient portal work. It seems with windows you could just copy the working xampp directory to the host after working on the security holes, load certificates and go.

bradymiller wrote on Thursday, October 27, 2011:

Odd,

What have you set for the web_root and webserver_root variables? Are you seeing any errors in the php error log?

Here’s the code it runs through, and on your site you are passing in a site=default in the URL, so odd that it is saying the GET is empty in below loop:

// Set the site ID if required.  This must be done before any database
// access is attempted.
if (empty($_SESSION['site_id']) || !empty($_GET['site'])) {
  if (!empty($_GET['site'])) {
    $tmp = $_GET['site'];
  }
  else {
    if (!$ignoreAuth) die("Site ID is missing from session data!");
    $tmp = $_SERVER['HTTP_HOST'];
    if (!is_dir($GLOBALS['OE_SITES_BASE'] . "/$tmp")) $tmp = "default";
  }
  if (empty($tmp) || preg_match('/[^A-Za-z0-9\\-.]/', $tmp))
    die("Site ID '$tmp' contains invalid characters.");
  if (!isset($_SESSION['site_id']) || $_SESSION['site_id'] != $tmp) {
    $_SESSION['site_id'] = $tmp;
    error_log("Session site ID has been set to '$tmp'"); // debugging
  }
}

-brady

kevmccor wrote on Thursday, October 27, 2011:

In php.ini in the  block there is a directive for the session information stored as files:

session.save_path = path to session files  

Just a guess, but you may not be storing session information where OpenEMR is looking.
I know nothing about GoDaddy, but I would imagine that GoDaddy has some information about this, or perhaps your site needs to have the ‘session.save_path’ identified somehow.

toledomed wrote on Thursday, October 27, 2011:

@cverk
GoDaddy has some of the cheapest hosting available, that’s why we are using it. I have been a longstanding GoDaddy customer since 2006 and generally have had no problems with their services. However, unless your combining prices, our hosting costs us roughly 4-5 dollars/month, not 30 as you had mentioned. Plus I get many coupon codes in emails that they send me, so that rate goes down even further. SSLs seem to be rather expensive at the moment, but from a HIPAA/Medical security standpoint that feature is not optional. Currently we do not have an SSL because I am waiting to get these OpenEMR issues ironed out first, then buy one, and install it.

@bradymiller
my webserver_root variable is manually set to the absolute hosting path of my shared hosting. web_root is simply set to /emr, according to how I have folder-mapped OpenEMR (‘domain/emr’ instead of ‘domain/openemr’). I had to do this because for some reason OpenEMR did not automatically locate the correct paths as the code indicates it should.

Regarding the site ID: It automatically passes in the default, as opposed to manual set (as seen in the address bar when you go to it) and that’s what I thought was odd, too. I looked over that piece of code in particular (before you mentioned it) for any possible clues or mishaps that would even remotely cause a problem, and nothing was able to be tweaked.

@kevmccor
GoDaddy and standard PHP configuration is the worst possible combination out there. However, this, as well as this entire problem as a whole, are almost certainly all caused due to the fact that it is SHARED hosting, not dedicated. While I understand dedicated everything is the optimal way to go, the price factor must be deeply considered.

In any case, GoDaddy claims that to change PHP configurations for your own folder of shared hosting, you simply place the PHP.ini or PHP5.ini (depending on your version of PHP; I happen to be running 5.2) into the root directory, and the server automatically reads said settings. Tried this already, entering in all of the entries OpenEMR specifically recommends for best performance (as noted on the initial setup screen). Has no effect on OpenEMR. If I were to add this path in, where should I put it?

also, if it helps, you can see my PHP config file here:
http://www.toledomed.com/php5.ini

Since this EMR is broken at this point, there obviously is no sensitive patient data–it is blank. So for the sake of everyone helping me, login using the default:

UN: admin
PW: pass

Obviously I will change the password after I resolve this, but until then please do login and see what I am seeing.

Thanks in advance to everyone who is able to help. It’s greatly appreciated. As always, let me know if there is any more information I can provide to help you.

cverk wrote on Friday, October 28, 2011:

Maybe I am showing my low spot on the learning curve, but I was thinking you needed more of a cloud server instead of a web site host to run something like this.

http://www.godaddy.com/hosting/virtual-dedicated-servers.aspx?ci=9013

This option would include a certificate and static IP address. If you don’t own a domain name, that is some extra. This is way outside my knowledge base, so like I said, if it can be made to work, directions would be great.

toledomed wrote on Sunday, October 30, 2011:

@cverk
Yes, that would technically be the best solution because you would have control over the root of the server, OpenEMR would have no trouble at all running its main framework from the root of the server. The problem with shared hosting is there are many security restrictions enforced since everyone has their own folder on one server. For us, shared hosting + SSL + domain was cheaper, so we took that option.

Technically, OpenEMR only requires that the server on which it is being stored on runs X version of PHP or higher and Y version of MySQL or higher (I don’t know the numbers off hand, but you get the idea). So if you can find hosting of any type (shared or dedicated) that meets the PHP/MySQL requirements, that’s fair game, and it should work under my current setup. However there are certain factors that shared hosting plays upon resources stored under it, so that is where our setup is choking.

If eventually I do get this working, I would be happy to contribute clear, concise instructions to the community on how to setup OpenEMR on GoDaddy Linux shared hosting. I’ll keep you posted. As for everyone else, feel free to contribute to solving this- everyone will benefit if it can in fact be fixed.

jason0 wrote on Tuesday, November 01, 2011:

Hello,

I have a thought or two:

The first, is what are the php and apache versions, modules, and environment in use?  I include a code snippet that will display this information.   I think you can read the output of this and maybe see where that php.ini file should be located.    Worst case, you can re-define some of the ini file settings with the “ini_set” command in php.  (see http://docs.php.net/manual/en/function.ini-set.php).

I would insert a few debugging “print” statements in that code segment shown above, in interface/globals.php: just to see what variables are being set (or not being set). 

Try entering the following into a file on the server (I usually use my first name, thus jason.php)

<?php
phpinfo();

Then call https://hostname/pathtoopenemr/jason.php

the output of this should show what php modules are in use, and any variables loaded from  php.ini. 

toledomed wrote on Tuesday, November 01, 2011:

@jason0
I have used the PHP info script before, and it never occurred to me to give it a try. here are the results:
http://toledomed.com/info.php

Let me know where I should go from here. According to this information, I have the PHP file placed correctly and its reading it apparently. Maybe there is just something misconfigured in there that would potentially be causing this problem to occur.

Thanks for the tip.

deannsco wrote on Wednesday, November 02, 2011:

Hi, I am new here, so I am not sure if I posted in the right place, but I hope you guys can help me find my way.   I am looking for help with setting up OpenER and OpenPHR to work seamlessly in the cloud and to add any other bells and whistles to create a fully functional EMR/EHR/PHR that will integrate with Microsoft HealthVault to create a full referral system and network of health professionals for a countrywide health information exchange.  I am a Nurse and I live in Grenada.  We are still generally paper-based wih our health records and I would like to make it a personal project to make emr available to all health institutions in Grenada.  The economy here is really depressed, so even though many of the providers want to move from all paper-based, the cost is a major deterrant.

I have some IT knowledge but have no knowledge of programming or application development, and since this is undertaken as a personal project, I do not have a budget for it either, but it is my desire to see healthcare moved to higher heights in Grenada, so I will work with whatever little financial resource I can scrape up (i hope it is not a lot) to get things started.  I would like to create a free or low-cost solution for Providers here so that everyone can set up their office using an EMR and have a full referral network established. 

I will be excited to learn how to setup the software and get tech support for end users, so I would appreciate what ever pointers you can give.  I have been researching hosting companies that would provide managed application hosting to get it in the cloud, but I do not know which companies are reputable, reliable, or low-cost.  I would like to get some suggestions here also.  I have sent out queries to RackSpace, OnthenetOffice, Parallels, Outsystems, and InsynQ.  I am waiting on their quotes.  If you know of more cost effective options  please let me know.  I would appeciate any help you guys can give.  Thanks very much in advance

I need to work with a developer who has worked with both the above software programs before or to get some pointers on how I can get help with development as a not-for-profit intity.  Kindly reply with some helpful tips or resources.  Thanks in advance.

deannsco wrote on Wednesday, November 02, 2011:

Sorry, I ment OpenEMR and OpenHRE (another opensource Information Exchange software - not OpenPHR)

sritel wrote on Thursday, November 03, 2011:

Hi,

We can help you with hosting it on our cloud. We do have a basic OpenEMR hosting option that might work for you. For more information, pleae feel free to reach me at srikant@emrtsolutions.com

Regards,

Srikant

deannsco wrote on Thursday, November 03, 2011:

That sounds great.   Let me know what’s involved on my part.  Email: deannsco@yahoo.com.  Thanks.

jay12141 wrote on Wednesday, November 16, 2011:

Feel free to move it to my hosting company I have low rates and have openemr running. www.shoreshosting.com

antijoey wrote on Tuesday, April 17, 2012:

Hi All,

Just wondering if a solution to the problem that was originally described by toledomed? This issue is exactly the same as mine but with the exception that GoDaddy is not my shared hosting provider. I am using iPage. Like toledomed, one mitigating circumstance seems to be that session.save_path has no setting. If it needs to be defined, what should it be? If it doesn’t, is there a solution forthcoming?

Thank you in advance for any additional insight.

AJ

antijoey wrote on Wednesday, April 18, 2012:

Okay, as surmised by bradymiller earlier (post 6), this issue seems to have little to do with whether or not $_GET is being passed. It is. The problem is $ignoreAuth. If one adds $ignoreAuth = true; directly before the section which he cites in post #6, one is able to successfully log in and view the interface.

What security vulnerabilities exist as a result of disabling $ignoreAuth in this manner? In what function is $ignoreAuth defined? Does this issue deserve a fresh thread?

Regards,
AJ

antijoey wrote on Wednesday, April 18, 2012:

That is definitely not a solution, as now no login is required to access.

I’m having a conversation with myself here and this issue is nearly a year old. Has anyone else out there successfully installed OpenEMR on GoDaddy or similarly shared-hosting platforms?