Introduction
Some files in PHPmotion require "loaders" created by
PHPShield. PHPmotion by default already comes with these loaders and in most cases you will not need to download them yourself or have to do anything other than upload and install phpmotion in the normal way.
Avoiding Errors
The most common errors that you will get with PHPshiled are due to uploading some PHPmotion files in the wrong FTP mode. The following files MUST be uploaded in binary mode.
Binary mode is a setting in your FTP program which you can enable or disable when uploading files. It tells the FTP program how to handle the files during transfer. If the files are not uploaded corrected, they will get
corrupted and this is by far the
largest cause of phpshiled related errors.
Another common cause (especially for Plesk Control panel users) is
safe_mode, you should ensure that this is disabled.
Upload these files in Binary Mode
PHPmotion V3
--------------
- /phpshiled/all files in this folder
- /classes/config.php
- /addons/customprofile/index.php
- /addons/customprofile/pimp.class.php
- /includes/mp3_id3_utils.php
PHPmotion V2
---------------
- /phpshiled/all files in this folder
- /classes/config.php
- /mp3_id3_utils.php
If you have purchases an addition Powertools and applications from us, then the following list of files must also be uploaded in
binary mode.
Zero Branding Licenses
-----------------------
- All Zero Branding licenses
VideoEmbedder
--------------
- /upload.php
- /gateways/all files
MassUploader
--------------
- /index.php
SMF Bridge
--------------
- /forum/smf_bridge.inc.php
PHP 5.2.+ Servers
If your server is running PHP5.2.+ you will need to do the following. Note that you can only do this if you have root ssh access and this usually means you are on a
dedicated server or a VPS. if you don't have root ssh access, you will need to contact your web host to make these changes.
Follow all the normal PHPmotion setup instructions to the end.
1) You will need to determine the path to your php "extensions directory" use a phpinfo() file to check this.
It will look something like this /usr/local/lib/php/extensions/no-debug-non-zts-20060613 (example only)
2) You will then need to copy 1 file from your ftp folder into this "extension library". The file to copy is located in the
"phpshield" folder and its named phpshield.5.2.lin.
Note: f you are on a freebsd server it will be phpshield.5.2.fre
3) Restart Apache server
Latest Templates from - PHPmotiontemplates.com
64-bit Servers
The loaders that come with PHPmotion (in the /phpshiled folder) are all 32bit. If you are running a 64bit system, you must download and replace all the loaders in the phpmotion/phpshield folder. For the latest loaders, visit
PHPShield
If you are on a dedicated server or VPS, you can check your system architecture by typing this command via shell:
uname -a
Common errors and solutions
---------------------------------------------------------------------------------------------------------
- Fatal error: phpSHIELD Loader - script loader checksum error [17] Encoded script was modified in
---------------------------------------------------------------------------------------------------------
This means you did not upload in Binary mode. The following files must be uploaded in binary. Refer to the opt of this wiki topic for
details on binary mode.
-------------------------------------------------------------------------
- Warning: dl() [function.dl]: Not supported in multithreaded Web servers
-------------------------------------------------------------------------
OR
---------------------------------------------------------------------------------------------------
- Warning: dl() [function.dl]: Unable to load dynamic library...... undefined symbol: executor_globals
---------------------------------------------------------------------------------------------------
If you server is running with Thread Safety enabled
1) You will need to have root ssh access to fix this error (meaning a dedicated server or a VPS)
2) Download the latest loaders from http://phpshield.com/loaders/index.php
3) Find the right one for your server..for most servers you want the "All loaders for Linux. PHP 4.3.x to PHP 5.x"
4) The file you download is a zip file containing various loaders for variosu PHp version (i.e. PHP4, 5 etc)
5) Take only the file that applies to your server for:
---- example for a PHP5.2.9 server-----
phpshield.5.2ts.lin
6) Upload this file into your server PHP extensions dir (if you dont know this, check your phpinfo() )
7) Append the following to your php.ini file
extension=phpshield.5.2ts.lin
8) Restart your apache server
--------------------------------------------------------------------------------------
- extension_dir does not exists /usr/lib/php/extensions/no-debug-non-zts-200343.......
--------------------------------------------------------------------------------------
Your PHP was not setup correctly. There is a folder missing on your server. All you need to do is create a folder with the same given
in your error message on your server. You will need SSH access to do this, or ask your host to do it. This directory
( Extensions directory) needs to actually exist on the server.
--------------------------------------------------------------
- Warning: dl(): Dynamically loaded extensions aren't enabled
--------------------------------------------------------------
You need to set the value enable_dl On (i.e.enable_dl On ) in your php.ini file on your server. You need SSH access to change this file.
If you don't have such access, ask your web host to do it for you.
Check also if you are running your PHP in safe_mode On this needs to be set to safe_mode Off in your php.ini file
---------------------------------------------------------
- Warning: dl() has been disabled for security reasons in
---------------------------------------------------------
The dl() function has been added to the list of disabled function on your server. You need to enable this (by removing it) in your
php.ini file on the server. In other cases your php may need to be recompiled with this function enabled.
----------------------------------------------------------------
- BLANK SCREEN - when you load the setup or any other page
----------------------------------------------------------------
If you are getting a blank screen then you may have ANY one of the problems above but your server is set to not show error notifications
so rather than seeing the actual error message, your php has been setup not to display error messages and so you get a blank screen
instead.
The suggusted starting point in trying to fixt this type of problem is in checking that you have uploaded files in Binary Mode
(see start of this wiki topic for details). If that fails then you will have to try every other solution mentioned above
-----------------------------------------------------------------------------------------
- Warning: dl() [function.dl]: Temporary module name should contain only filename in ......
-----------------------------------------------------------------------------------------
This is likely because your server is PHP5.2+ (or greater). You should see the section above titled "PHP 5.2.+ Servers" on how to
install loaders directly on your server.
For more help on PHPShield
Visit the PHPshield board in our forum