I have a dev and a testing environment that (ostensibly) are set up the same, but code that works on the dev server doesn't work on the test server. I've narrowed it down to memcached. The dev environment is using memcached and that works fine; but there is no session storage on the test server using the memcached driver in the application's config file. If I change the test server to use Laravel's native file driver, all the session-based code works like a charm; change it back to using memcached, and session data is not persisted. The code is identical; both environments are cloned from the same repo at the same commit. Output from phpinfo() in both environments is nearly identical, aside from the server URL and referrer path differences you would expect from running the script on different servers. It just seems like memcached isn't running/working on the test server, and I'm not familiar enough with how it works to know why not or how to troubleshoot. Anyone have any hints or things to try? Could it be a permissions problem? Is there a config file I need to change on the test server to match what's on dev? (The phpinfo() output for the memcached section is exactly the same for both servers.)

Server setup:

  • Dev: Debian 7.4 Wheezy
  • Test: Debian 7.5 Wheezy
  • PHP (both): 5.4.27-1~dotdeb.1
  • Apache (both): 2.2.22

Embarrassingly enough, memcached wasn't actually installed on the test server; you'd think when installing the php memcached extension, it would complain about things like that, but no, it happily installed the extension with nary a peep.

  • It happens (-: You have to remember that memcached doesn't need php let alone the php memcached extension to run. – KM. May 7 '14 at 17:40
  • I get that...but I would have thought the extension would require the service to run, and that installing the extension would error out if the service wasn't installed. – mounty May 7 '14 at 17:58
  • Didn't you have an error code when querying from local (not installed) memcached server, most probably using ->get() or ->set()? – Yvan Dec 29 '14 at 9:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.