What is suPHP? What is being changed from phpsuexec to suPHP? How to use PHP 4 or PHP 5 on JaguarPC shared servers?

suPHP is a tool for executing PHP scripts with the permissions of their owners. Phpsuexec also executes PHP with the permission of their owners. However, these are two different tools and there are some improvements with moving to suPHP now that phpsuexec has been deprecated.

Once suPHP is available on your server, you can login to your control panel and find a link 'PHP Configuration' under 'Software/Services'. On that page:

1. You can switch your account's PHP to PHP 4 or PHP 5.

2. You can read how to configure PHP and how suPHP works. It is similar to phpsuexec as explained on this link excluding some improvements mentioned below.

3. Download the server wide php.ini for PHP 4 or PHP 5 and customize it for your own needs. You may need to do this regularly to keep your PHP settings in synch with server level settings such as after a Zend Optimizer upgrade.

Changes from phpsuexec to suPHP:

1. By default, the PHP CLI is PHP 5. Here are the paths for your reference:

/usr/bin/php (PHP 5 CGI)
/usr/local/bin/php (PHP 5 CLI)
/usr/php4/bin/php (PHP 4 CGI)
/usr/local/php4/bin/php (PHP 4 CLI)

2. There are some significant improvements in suPHP such as:
  • HTTP based authentication auth works via PHP.
  • Symbolic links to PHP files also work.
  • Permissions of public_html does not need to be changed for using shared SSL with PHP 5.
  • Custom error pages will work with both PHP 4 and PHP 5.

3. ionCube PHP Loader will be available server wide along with Zend Optimizer. If you use a custom php.ini, you will need to update it by downloading it from your control panel so that the latest Zend Optimizer can load for your scripts as well.

4. If you are setting up custom PHP settings, the custom php.ini file will be required in a folder where the PHP script needs to execute. Or you can place php.ini anywhere and have this directive in public_html/.htaccess

suPHP_ConfigPath /home/username/php5-config 

where username is your cPanel account username, and php5-config is just a folder name (you can name it anything) and it will pick php.ini from that folder. Yes, you can have php.ini outside of your webroot in suPHP. This is a new feature.

5. To activate PHP 5 on a subfolder or in your whole account, this directive was added in .htaccess in phpsuexec

AddHandler application/x-httpd-php5 .php .php3 .phtml

or a variant of it. Now this must be proceeded by the marker comment to block cpanel from changing your settings:

# Use PHP5 as default
AddHandler application/x-httpd-php5 .php .php3 .phtml

Or if you use control panel to activate PHP 5 (upgraded servers), then you do not need to manually add the above directive.

Other updates

1. For semi-dedicated clients, ffmpeg will be available via both PHP 4 and PHP 5.

2. mod_gzip is being installed as well on all servers. ( for Apache 1.3.x servers , Apache 2.x servers will use mod_deflate instead )
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

What are some basic software paths?

Sendmail: /usr/lib/sendmailPerl5: /usr/bin/perlServerpath: /home/username/public_htmlRoot path:...

How do I change File Permissions?

If you're new to scripting, or getting the dreaded "Internal Server Error" when you try to run a...

What is SSI (Server Side Includes) and how can I use it?

Server Side Includes (SSI) is a feature of CGI that enables you to dynamically insert a piece of...

Where do I place CGI scripts?

Although you can place cgi scripts in random directories throughout your site, it's best if you...

What is PHP and how do I use it?

PHP is a powerful server-side scripting language that can be used to extend the functionality of...