ELF Header Error and Building Modules In Apache for Jelastic - macos

So I'm building a web app and I decided to move it from my localhost to Jelastic. The app requires one custom module: mod_auth_cas. I followed the instructions on the Jelastic website for adding a module.
The only step I didn't follow was compiling the module against 2.2.15. I tried configuring that version, but I couldn't figure out how to run it concurrently with the 2.2.24 version my Mac runs natively. I figured that a module that worked with 2.2.24 should work with 2.2.15.
I uploaded the .so file to the Jelastic server and added the following LoadModule command to the httpd.conf file:
LoadModule auth_cas_module /usr/lib64/php/modules/mod_auth_cas.so
and restarted Apache. I got the following error:
Failed to start
Stopping httpd [ OK ] Starting httpd
Jelastic autoconfiguration mark httpd
Syntax error on line 161 of /etc/httpd/conf/httpd.conf
Cannot load /usr/lib64/php/modules/mod_auth_cas.so into server
/usr/lib64/php/modules/mod_auth_cas.so invalid ELF header [FAILED]
From the research I did, it seemed as though this error comes when "the installation is
'corrupted' or someone installed something for the wrong processor/binary type."
So I'm trying to figure out what to do. I either need to figure out how to install Apache 2.2.15 and compile a module against that, or I need to figure out what I'm doing wrong on the Jelastic side, or I need to figure out why the .so file is getting corrupted. Which one is it, and how do I do it?

Indeed the problem is the different platforms.
The module was compiled for the correct platform and installed for you.
FYI: To use this module we created a cas.conf file in conf.d please open this file and modify accordingly.

I recommend that you contact your hosting provider and ask them to compile that module for you. The problem is most likely caused by that (compilation on a different system / system that is too dissimilar), or else it's at least the first thing to rule out.

Related

Error loading Golang and Lua plugins in Kong

I'm trying to install a new instance of Kong, but I'm getting the following error trying to start the service:
stat /tmp/go-plugins/lua_plugin.so: no such file or directory
The installation is supposed to install a plugin built using Golang and a plugin that is still written in Lua. If I remove the Lua plugin, the service starts up fine. The part that's confusing me is why is Kong assuming that both plugins are written in Golang? Other installations have worked fine, so it's very confusing why it's doing it now.
The issue was the directory I was mounting in containing the lua plugins was not being mounted into the container properly. Specifically, the host path for the volume definitions, so fixing that resolved the issue.

PuPHPet - failed dependencies

I've build basic PuPHPet configuration and tried to run it, but i'm getting warnings like
Warning: /Stage[main]/Puphpet_php/Service[php5.6-fpm]: Skipping because of failed dependencies
I haven't made any changes to config. On website I only checked instalation of Redis, MongoDB and ElasticSearch (it's important to my app).
What can be wrong?
Config: http://pastebin.com/3JjGwWGS
Log: http://pastebin.com/SAyRy1eW
It looks like you're hitting this open issue here, and that page links to the workaround here.

Using NGINX server to deploy a Meteor App from Amazon Linux AMI 2013.09.2 instance receive Module Error

I am attempting to deploy my first web application (a version of Telescope from the MeteorJS framework) via Heroku to a custom subdomain from a Amazon Linux AMI 2013.09.2 instance. I am following along with this tutorial - http://satishgandham.com/2013/12/a-complete-guide-to-install-production-ready-telescope-on-your-own-server/ - but once I attempt to run Telescope using PORT=3000 MONGO_URL=mongodb://localhost:3000/Telescope ROOT_URL=http://ec2-54-193-42-229.us-west-1.compute.amazonaws.com node client/main.js, I receive this error message: Error: Cannot find module '/home/ec2-user/bundle/programs/server/node_modules/fibers/client/main.js'
What I have attempted to do to solve this problem is performed cp || mv on the file main.js which is originally located in the ~/Telescope/client directory over to /home/ec2-user/bundle/programs/server directory and even '/home/ec2-user/bundle/programs/server/node_modules/fibers but I cannot seem to separate main.js from the /client directory. I am not sure if that is the issue or if there is some other underlying problem but I want to find a work around to using a proxy server at this point. I thought that moving the main.js file out of the /client directory was sufficient but apparently not. I am not sure it is imperative for my purposes to continue attempting to use a proxy but if there is a fix, I would not mind learning about it.
Or if any one could direct me on how this - https://github.com/aldeed/deploymeteor/ - could be a potential work-around to using an NGINX server proxy your help would be much appreciated.
You are getting the error because you are not running the command from your home folder.
You were at bundle/programs/server/node_modules/fibers.
Either use absolute path for client/main.js, or cd to ~
MONGO_URL=mongodb://localhost:3000/Telescope ROOT_URL=http://ec2-54-193-42-229.us-west-1.compute.amazonaws.com node client/main.js
PS: It will be helpful for others if you asked the question on the post itself, instead of here

Ruby app only works when Passenger is "disabled"

I have deployed a Sinatra application on an Ubuntu server using Apache and Passenger. Through some trial and error, I realize the app only works when the passenger module is disabled.
$ a2dismod passenger
After an Apache restart, the app runs as expected.
If I re-enable the module...
$ a2enmod passenger
...I see this warning upon Apache restart:
[warn] module passenger_module is already loaded, skipping
and the app stops working. Apache responds, serving the contents of the vhost's document root, but is not recognized by Passenger.
I'm glad my app works, but I'm not sure how to explain the reversed effect of enabling/disabling the passenger module.
I ran into the same problem: if you follow passenger installing instruction with this version of Apache you may actually tell Apache to load passenger twice.
Before adding the 3 famous lines to your Apache configuration file:
LoadModule passenger_module /usr/…/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.11
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.2-p290/ruby
Check the configuration file apache2.conf for lines like these:
# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
If these lines do exists it means that on start your Apache server will include every *.conf and *.load file from /mods-available to /mods-enabled and than load them.
So if you run in the concerning warning message it means you are loading passenger module twice!
You can take advantage of this Apache feature going to /mods-available, looking for passenger.conf and passenger.load files and edit them instead of apache2.conf.
The ‘LoadModule passenger_module’ line goes into passenger.load, while the other 2 ‘PassengerRoot’ and ‘PassengerRuby’ lines go into passenger.conf.
Then restart your server and you’ll be fine.
More about this issue here: http://www.duccioarmenise.net/ruby-on-rails/warn-module-passenger_module-is-already-loaded/
This most likely means you've specified 'LoadModule passenger_module ...' twice. The first entry is somewhere not in passenger.conf, the second entry is in passenger.conf.

Has anyone setup tomcat to run virtual hosts using mod_jk

I work in OSX primarily with mostly PHP. Normally I work locally using MAMP and virtual hosts setup in my httpd.conf so that I can point a browser to http://some-project and have as many projects as I need setup.
We have a project coming up where we need to serve JSP pages and I would like to set up my local apache server to serve only JSP files to Tomcat and everything else to MAMP using the same virtual hosts setup in:
~/applications/MAMP/conf/apache/httpd.conf
So far I have:
Successfully installed Tomcat
Placed mod_jd.so in
~/applications/MAMP/Library/modules/mod_jk.so
Added the module by placing:
LoadModule jk_module modules/mod_jk.so
in
~/applications/MAMP/conf/apache/httpd.conf
Created /Library/Tomcat/Home/conf/jk/workers.properties
and added the following lines:
workers.tomcat_home=/Library/Tomcat
workers.java_home=/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
ps=/
worker.list=ajp12, ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp12.type=ajp13
worker.ajp13.mount=/*.jsp
added the following lines:
JkWorkersFile /Library/Tomcat/Home/conf/workers.properties
JkLogFile /Library/Tomcat/Home/logs/mod_jk.log JkLogLevel debug
to
~/applications/MAMP/conf/apache/httpd.conf
I cannot start my MAMP however when these last two lines are present in my httpd.conf.
Does anyone work like this?
Any tips?
Any clear ideas of what I'm doing wrong?
I've found with MAMP that it won't start unless the log files already exist. I create the path to the log file and put in an empty text document named the same as the expected log file and it starts right up.

Resources