Jump to content
Harrison

Installing ioncube on 1and1 servers

Recommended Posts

Until now

Until this week it was straight forward to install ioncube on a server hosted with 1and1.  You just uploaded the ioncube file ioncube_loader_lin_5.2.so to the root of your server's hosting directory and the server would automatically find and used it.

 

Changes to 1and1 setup now stop this working

As of this week 1and1 have started to upgrade their servers, and this includes updating to php 5.2.5.  With this version of php the dl() function has been disabled on the server, and this was needed to make the run-time install of ioncube work.  Therefore if any of you using a 1and1 server have your ioncube install setup by just having the ioncube loader in the root of your hosting space, then it might suddenly stop working once 1and1 get around to upgrading your server.

 

Thankfully there is a solution.

 

Installing ioncube

Download the current ioncube package for your server from here.

 

Upload the file ioncube_loader_lin_5.2.so from this package into the root of your hosting webspace.

 

Next you need to create a new php.ini file using notepad or any other text editor.  Inside of this file put the following and then save the file:

 

zend_extension=/homepages/xx/dxxxxxxxxx/htdocs/ioncube_loader_lin_5.2.so

(Put the relevant parts for your specific server path where I have put the x's.  You can find this path out from your 1and1 control panel).

 

Then copy this php.ini file onto your server, placing it into the Joomla Administrator directory.  (It needs to be in here as this is the location of the index.php file that is called when the jReviews administration panel is loaded).

 

And that is it.  Now the server and jReviews should find and load the ioncube loader and allow the jReviews backend to work.

Share this post


Link to post

Hello,

 

I'm trying to install ioncube on 1and1.fr servers and it doesn't work...

 

It says :

 

Warning: dl() [function.dl]: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20020429//../../../../../homepages/X/xxxxxxxx/htdocs/ioncube/ioncube_loader_lin_4.4.so' - /usr/lib/php/extensions/no-debug-non-zts-20020429//../../../../../homepages/X/xxxxxxxx/htdocs/ioncube/ioncube_loader_lin_4.4.so: cannot open shared object file: No such file or directory in /homepages/X/xxxxxxxx/htdocs/ioncube/ioncube-loader-helper.php on line 411

 

and

 

Run-Time Loading Installation Instructions

Testing Server

Testing whether your system supports run-time loading...

 

 

Looking for Loader 'ioncube_loader_lin_4.4.so'

 

Extensions Dir: /usr/lib/php/extensions/no-debug-non-zts-20020429 (/usr/lib/php/extensions/no-debug-non-zts-20020429)

Relative Path: /../../../../../homepages/X/xxxxxxxx/htdocs/ioncube/

Found Loader: /usr/lib/php/extensions/no-debug-non-zts-20020429/../../../../../homepages/X/xxxxxxxx/htdocs/ioncube/ioncube_loader_lin_4.4.so

 

:-\

 

any idea?

Share this post


Link to post

That is very similar to the errors I received after 1and1 upgraded their servers to PHP 5.2.5 because this removed a function required to auto include the ioncube loader.

 

Did you try the method I outlined above?  Remembering to create a php.ini file with the line shown, but changed to reference the location of the iconcube loader on your server.  However your server seems to need the older 4.4 version of the loader, so just replace the one I've referred to with that version when you are doing it.

Share this post


Link to post

 

Because on 1and1's servers PHP is run as through a cgi interface the local php.ini settings don't propagate to subfolders. I find it is necessary to put the php.ini file in the root, in /administrator/ and in /administrator/com_jreviews/  . This makes the jReviews admin interface accessible. I'm doing this for a client and can't give it a thorough test on his live site - but I've asked him to report back on any issues.

 

The only issues I can foresee would be caused by the presence of encoded files in subfolders under the /administrator/com_jreviews/ folder. In this case the php.ini file would need to be copied to these sub-folders too.

 

So far things are looking good - fortunately this means we won't require 1and1's support staff - because frankly they aren't up to the job.

 

Dean.

 

Share this post


Link to post

Hi Harrison,

 

Thanks so much for your guide.  It save me lots of time.

 

I had all of the steps except for placing the php.ini file in the Administrator directory.

 

I moved the file I had created there and everything worked perfect!

 

Thanks Again!

Share this post


Link to post

This is from the 1and1 Administrator FAQ if anyone needs additional info

(note: they too mention you need the php.ini in each folder):

 

What's the PHP configuration?

 

On our Managed Servers PHP is installed as a CGI application. Scripts ending

in ".php" are executed by the PHP-interpreter using your customer ID.

 

The PHP installation includes the following modules:Module Version

Expat 1.95.6

Sablotron 1.0

PCRE 4.5

OpenSSL 0.9.6

Libcurl 7.10.3

MySQL Client API 4

IMAP c-Client 4.1

GD 2.0 or higher (FreeType, TTF library, GIF Read/Create, JPG, PNG, WBMP)

GDBM 1.8.0

Zlib 1.2.1

 

 

The php.ini file contains the following default values:

upload_max_filesize:20 M

max_execution_time:300

memory_limit:40 M

post_max_size:8 M

SMTP:localhost

 

The php.ini file should be placed in all the directories that has PHP scripts you

want effected by that php.ini file.

 

PHP version 5 is available to use with your 1&1 Managed Server

Share this post


Link to post

The following information may be helpful for beginners

(i'm throwing this in here because a fair number of people trying to use ioncube on 1and seem to be navigating here from google for advice:):

 

1) Which ioncube loader do I download? (from:  http://www.ioncube.com/loaders.php ):

 

You can find the server information and php info. your hosting company is using from the Joomla administrator's control panel under a menu on the top right: "Help > System info." Often it will be running on an x86 Linux machine.

 

2) If you don't know how to use FTP (although if this is the case you may want to learn a little more about this.  If you're going to be playing around with a Joomla website, you'll need to know how to move files around from time to time) you can use the "windows installer" package instead of the .zip version.  It includes a little FTP service that will allow you to upload the Ioncube loader to wherever you'd like on the remote server (it creates a folder called "ioncube").

 

Help is available here on the installer: http://help.ioncube.com/ipf/index.php?page=intro&version=3.0.6&type=remote&locale=en_US

 

Generally you'll want to have the "ioncube" folder one directory level above any.php files that you're going to be using.  And if you're with 1and1 make sure you place the .ini files as described above.

 

3) Other interesting information about 1and1, php, and ioncube:

 

“It's not that they are running php version 4x, they actually run version 5, but they've set it so that files with just a .php extension run in version 4 mode - files with .php5 run with version 5. No clue as to why they are doing it that way.”

 

http://forum.joomla.org/viewtopic.php?f=430&t=325310&p=1416220

 

4) Keep in mind that the older this post gets the less relevant this information will be.

Share this post


Link to post

Hello,

 

I've followed the instructions and I have the ioncube loader loaded.  Here's the message I get from the ioncube-loader-helper.php:

 

An ionCube encoded file has been loaded successfully.

Encoded files should now function correctly.

 

When I click on the jReviews component, all I see is a blank page, and my URL looks like:

 

sitename.com/administrator/index2.php?option=com_jreviews&url=license&msg=Please%2Benter%2Byour%2Blicense%2Bnumber.

 

Share this post


Link to post

A couple of suggestions:

 

1) Put the ioncube-loader-helper.php file in the /administrator/ folder and run it from there to make sure it's working where it's supposed to. If it's not, you may need to put your php.ini file in /administrator as well

 

2) Go to this url to finish the installation correctly

 

sitename.com/administrator/index2.php?option=com_jreviews&url=install

 

 

Share this post


Link to post

A quick run through of some of the additional information posted by others to give a bit more information.

 

1) Which ioncube loader do I download? (from:  http://www.ioncube.com/loaders.php )

 

As I mentioned in my original post it is the ioncube_loader_lin_5.2.so file is the one needed for 1and1.  This in in the Linux 5.2 ioncube download.

 

3) Other interesting information about 1and1, php, and ioncube:

 

“It's not that they are running php version 4x, they actually run version 5, but they've set it so that files with just a .php extension run in version 4 mode - files with .php5 run with version 5. No clue as to why they are doing it that way.”

 

Yes, it is true that by default 1and1 servers load .php scripts using php4.  To get around this issue and make all scripts run using php5 create a blank text file in notpad and add the following line:

 

AddType x-mapp-php5 .php

 

Now save your file as .htaccess  Make sure it has the . at the start and no extension to the filename.  Now upload this to the root of your Joomla site and all php scripts will now load using php5.

Share this post


Link to post

Hello,

 

I've followed the instructions and I have the ioncube loader loaded...

 

When I click on the jReviews component, all I see is a blank page, and my URL looks like:

 

sitename.com/administrator/index2.php?option=com_jreviews&url=license&msg=Please%2Benter%2Byour%2Blicense%2Bnumber.

 

 

You do not have the php.ini file in your Joomla/Administrator directory on the server.  Do this so that ioncube can load and run the jReviews admin panel. 

 

Alternatively this could also be a jReviews licensing issue.  Is your site running on the actual domain you have linked to your license?  And if so do you have a valid key file for your license on your server?

Share this post


Link to post

I timed out on my original reply.  I'll try and get everything in once again.

 

my ioncube-loader-helper.php is properly detecting my php.ini:

 

Analysis of your system configuration shows:

 

PHP Version 5.2.8

Operating System Linux

Threaded PHP No

php.ini file /homepages/x/dxxxxxxxxx/htdocs/test/administrator/php.ini

Required Loader ioncube_loader_lin_5.2.so

 

Per the instructions above, I dropped the php.ini into the /test, /administrator, and /com_jreviews folders with appropriate adjustments for the ioncube folder.  The ioncube folders were installed one level above each of the php.ini folders.

 

Here's what I have in one of the php.ini files: 

zend_extension = /homepages/x/dxxxxxxxxx/htdocs/test/administrator/ioncube/ioncube_loader_lin_5.2.so

 

I've also tried it in just the /administrator folder with just the one ioncube folder; no other instances of it.

 

So, it seems that I'm half way there.  What am I forgetting/missing?

 

The error I am receiving is:

Site error: the file /homepages/x/dxxxxxxxxx/htdocs/test/components/com_jreviews/jreviews/admin_controllers/my_controller.php requires the ionCube PHP Loader ioncube_loader_lin_5.2.so to be installed by the site administrator.

 

Thanks in advance for any assistance.

Share this post


Link to post

You only need to put the php.ini file in the /administrator folder as you did last and the ioncube folder can be anywhere as long as you adjust the path.

 

If the php.ini file is being recognized and it still doesn't work it might be that you have a 64bit server and you are using the 32bit version of the loader. Check the top of phpinfo and see if you can find the server specs saying it's 64bit. If you need further help with this please submit a ticket.

Share this post


Link to post
Per the instructions above, I dropped the php.ini into the /test, /administrator, and /com_jreviews folders with appropriate adjustments for the ioncube folder.  The ioncube folders were installed one level above each of the php.ini folders.

 

I think this is where you are going wrong.  Think of ioncube in the same way as a service or application in Windows.  You only need it in one location and loading by the OS/Server once.  You wouldn't install a Windows application like Word in every directory you saved a word document in, would you?

 

In the case of the way 1and1 servers are setup the ioncube .so file needs to be in the root of your webspace and nowhere else.  The php.ini will just contain:

 

zend_extension=/homepages/xx/dxxxxxxxxx/htdocs/ioncube_loader_lin_5.2.so

 

And in the php.ini file the reference to it to load Ioncube will then always be this root directory.

 

And you just place this php.ini file into the administration directory in your Joomla installation.  So in your case it would be placed in:

 

/homepages/x/dxxxxxxxxx/htdocs/test/administrator/

 

And that should be all that is needed.  You don't need the php.ini file in any other directory as ioncube is only used to load the backend administrator panel for jReviews and nothing for the frontend.

 

 

Share this post


Link to post

Hi

 

Have spent a lot of time searching various threads and not being able to solve this apparent conflict.

 

Step 1 - Install Ioncube & Jreview

 

I  successfully installed jreviews following this thread instructions - install ioncube_loader_lin_5.2.so in directory /ioncube - added a php.ini to root and administrator directory. Worked fine! :)

 

Step 2 - Decided to install Joomla SEF

 

Add to .htaccess  lines below. 

AddType x-mapp-php5 .php

Options +FollowSymLinks

RewriteEngine On

RewriteBase /

 

Worked fine  :)

 

 

Result! - Went back to Jreviews and ...  Broken Jreview installation  returning this error :'(

 

Site error: the file /homepages/xx/xxxxxxxxx/htdocs/mysitedirectory/components/com_jreviews/jreviews/admin_controllers/my_controller.php requires the ionCube PHP Loader ioncube_loader_lin_5.2.so to be installed by the site administrator.

 

Please help!!!!

 

Versions:

 

php -  5.2.8

Joomla - Joomla! 1.5.9 Production/Stable

Jreviews - 2.0.8.39

 

 

 

 

Share this post


Link to post

Jesús C López

 

Muy buenas a todos y en especial a Alejandro, llevo cosa de un mes trabajando en una web de gaming, inspirada en la de http://www.oyunmaniac.com/ que utiliza jreviews, así dispuesto a probar el TRIAL Y APRENDER cómo funciona, me ha frustrado mucho el hecho de no poder hacerlo funcionar en el servidor de 1and1 por problemas con ioncube.

 

NO ES ERROR DE CONFIGURACION. pues he creado 2 webs en localhost con wampserver y en ambas me funciona la configuración de mi php.ini para el ioncube.

 

la dos únicas diferencias que existen entre localhost y el server son:

 

1. la ruta de instalación de ioncube en localhost es: C:\wamp\bin\php\php5.2.9-2\ext\ioncube

1. la ruta de instalación de ioncube en 1and1 es: (root): /homepages/xx/xxxxxxxxxx/htdocs/

 

2. la ruta de instalación de php.ini en localhost es: C:\wamp\bin\apache\Apache2.2.11\bin\php.ini (loaded configuration file)

2. la ruta de instalación de php.ini en 1and1 es: /homepages/xx/xxxxxxxxx/htdocs/administrator/php.ini (Loaded Configuration File)

 

Y "creo" que esto es correcto. lo único que diferencia ambos procesos de instalación es que con wampwerver tengo que reiniciar el servidor para que me lo de por válido, sin embargo en el servidor 1and1 no sé cómo hacerlo ni me contestan los mails (3 dias de espera) del soporte de 1and1. y realmente estoy perdiendo mucho tiempo en configurar el dichoso ioncube.

 

Gracias por adelantado a todos y en especial a Alejandro del que tengo muy buenas referencias.

 

1. que el php.ini de localhost está localizado en c:\wampserver\

Share this post


Link to post

Jesús López C

 

hi to all and especially to Alejandro, I working for months on a gaming website, inspired by the http://www.oyunmaniac.com/ using jreviews and im trying to learn how it works jreviews TRIAL. I was very frustrated being unable to get it running on the server from 1and1 problems with ioncube.

 

NO configuration error. for I have created 2 websites on localhost with wampserver. it works for me and both my php.ini settings for ioncube.

 

The only two differences between localhost and the server are:

 

1. installation path of ioncube on localhost: C: \ WAMP \ bin \ php \ php5.2.9-2 \ ext \ ioncube

1. installation path of ioncube on 1and1: (root): / homepages / xx / xxxxxxxxxx / htdocs /

 

2. installation path of php.ini in localhost: C: \ WAMP \ bin \ apache \ Apache2.2.11 \ bin \ php.ini (loaded configuration file)

2. installation path of php.ini in 1and1: / homepages / xx / xxxxxxxxx / htdocs / administrator / php.ini (Loaded Configuration File)

 

And "think" that this is correct. the only thing that differentiates the two processes is that installation wampwerver I have to restart the server for me to apply for, however in the 1and1 server I do not know how I do not answer mails (3 days waiting) media 1and1 . and I'm really losing a lot of time to set the ioncube happy.

 

Thanks in advance to all and especially to Alejandro that I have very good references.

 

 

Share this post


Link to post

Muy buenas Alejandro, me alegro de que me contestes tan rápido, verás el error es el típico

 

Site error: the file /homepages/xx/xxxxxxxx/htdocs/components/com_jreviews/jreviews/admin_controllers/my_controller.php requires the ionCube PHP Loader ioncube_loader_lin_5.2.so to be installed by the site administrator.

 

debido a que no me carga el ioncube

 

Hace unos minutos os he mandado un ticket con los datos superadmin de la web por si os hace falta, gracias

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Please refer to our Privacy Policy.