kinetic Resources logo  
  MOREnet logo
kinetic Home | kinetic Manager | E-mail Services | Web Site Management | USENET News | Modem Pools
 Home >  Web Site Management > Application Server > Application Server Overview
     
Application Server  
     
  Application Server Overview  
  Tested Applications  
  Tested Applications Installed  
  Other Resources  
     

View the printer friendly version of this document

PHP/Perl Application Server Overview

Important: The PHP/Perl Application Server is currently in a PILOT status. If your organization is interested in having a web site enabled with an Application Server, please contact MOREnet at kinetic@kinetic.more.net or call either (800) 509-6673 or (573) 884-7200 for additional information. Volunteer participants are advised that during the PILOT phase, reliability is not garanteed and settings which affect web-based applications may change.

Contents


Overview

MOREnet can enable kinetic Service hosted web sites to process PHP and Perl applications for the web. These web applications may utilize a MySQL database, send e-mail, and/or provide dynamic content to supplement your web site. Enabling PHP and Perl can be done either at the time a site is set up or at a later date. If done later, you will not need to alter or modify your existing web site; current contents will continue to function as they did before. Once enabled, simply begin adding additional content which utilizes PHP or Perl and/or modify existing content to take advantage of the new capabilities of your web site.

The Application Server works as an addition to your web site. To maintain efficiency and rapid delivery of content to your viewers, only web content which requires CGI resources are processed by the application server. Static HTML pages, graphics, and other content not requiring processing, are served directly from the web server.

All of the processing takes place "behind the scenes". Which means your web content designers and PHP or Perl CGI programmers do not have to change the way they upload content to the web site. You do not need to alter or modify your existing methods of updating your web site.



PHP

The kinetic Service Application Server provides support for applications which are compatible with PHP version 4.4.2. In addition, a MySQL database is available for those PHP applications which can use a MySQL database.

Installation of most applications will consist of downloading the app from their web site, unzipping it, and then reading the applications' installation instructions. Once this is done, upload the unzipped application's files to your web site, and follow the applications' installation instructions. Commonly there is a configuration utility the instructions will tell you to run to complete your installation.



Perl

The kinetic Service Application Server provides support for applications which are compatible with Perl version 5.8.8. In addition, a MySQL database is available for those Perl applications which can use a MySQL database.

Installation of most applications will consist of downloading the app from their web site, unzipping it, and then reading the applications' installation instructions. Once this is done, upload the unzipped application's files to your web site, and follow the applications' installation instructions. Some times there is a configuration utility the instructions will tell you to run to complete your installation. However, typically the installation instructions will tell you to simply edit a particular file and change certain values as needed before uploading to your web site.

Perl scripts historically have been placed within the /cgi-bin/ directory. However, this is not a strict requirement with the kinetic Service Application Server. Your Perl scripts will work regardless of where they are placed within the directory structure of your web site. It is only a recommendation that Perl scripts be grouped together within a /cgi-bin/ directory so that they can be more easily managed and updated.



Application Data and Web Content Directories

Some applications may have need of a data directory in which to store files, session information, or temporary space for receiving uploads. Typically for such files it is preferred that they not be "web visible" (i.e.- viewable with a web browser). The Application Server provides a place for these types of files.

When using FTP to update your web site's content, you will find the application data directory within the directory for your kinetic service web site. This is at the same "level" as the site's ./logs, ./reports and ./www default directories. Within the application data directory you will find two additional directories:

  • /data/
  • /data/php_sessions/
  • /data/php_uploads/
These two directories are used specifically by PHP applications if and when they need to store session information or temporary uploaded files. When configuring PHP applications for your web site, you do not need to specifically define these directories for sessions and temporary uploads. PHP within the Application Server is already configured to use these directories.

Some PHP or Perl applications may need a place to store files other than session files or temporary uploaded files. If you do not want these files to be web browser viewable, you can use the /data directory. In the configuration for such applications, the directory path to the /data directory will be:

  • /export/web/data/

See Default Directories Within All Web Sites for more information regarding the default directories.


Some applications have a place in their configuration for defining the web content directory path. Normally this is referring to the directory path to the start of your site's web content area. You may also see this referred to as the "web content root". For applications running in the Application Server, this appears different than the path you will see via FTP. Within the Application Server, your applications see the start of your web site's web content area as being the following directory:

  • /export/web/www/

Additionally there are other applications which may need to know in their configuration what is frequently called the "application directory path". This is simply the web content directory path plus the directory path to where you installed the application. For example, if you created a directory called myapp and uploaded the application files to this directory, you would configure the application directory path as:

  • /export/web/www/myapp/



MySQL

The kinetic Service Application Server also provides access to MySQL version 4.1. You will be provided with a MySQL account to use for accessing MySQL. When the application server is set up for your web site, the information your downloaded applications will need for their database configuration will be provided to you.

If you intend to design and write your own custom PHP or Perl applications, it is recommended that you consider downloading the free MySQL Administrator from MySQL's web site. Additionally, if you will need it, consider downloading the MySQL ODBC Driver, Connector/ODBC, if you will be using Windows™ applications to connect from your desktop computer to the database. This is also available for free from MySQL. You may also find it useful to use the free MySQL Query Browser for SQL query testing and development purposes. Note that none of these items are required to utilize the database; they are however frequently helpful.
And did we mention that they are free?



Error Logging

All error messages which are passed back to the web server will be logged in the Apache error logs for your web site. Generally the error messages logged in this fashion are the type which cause the web visitor to see a "500:Internal Server Error" message displayed in their browser. Usually these are fatal type errors which completely prevent the application from running at all. To find your web site's error log when these errors occur, read the section on /logs in the Default Directories Within All Web Sites documentation for more information.

Other errors can result when the application is syntactically correct but contains logic errors in the programming. These errors typically result in the application running, but not delivering the correct results. These errors can be more difficult to track down as their is often no entry in the error log. Solving them usually depends on the programmer including appropriate code to detect and display messages when things go astray. Failure to connect to a database, failed SQL inserts or updates, and errors returned from SendMail - without program code to detect such problems - are some of the more common sources of applications running but not working correctly.



PHP and Perl Environment Information

If an application you are installing has specific requirements you need to check, or if you are developing your own PHP and/or Perl applications, you can find information on the environment using the following utilities:

  • http://your.web.site/phpinfo/info.php
  • http://your.web.site/perldiver/perldiver.cgi

You will need your web site's webmaster/WAC username and password to access these utilities.



MOREnet AppHosting Discussion List

MOREnet provides an email-based discussion list. The AppHosting discussion list is open to any members who have a MOREnet hosted web site enabled with an Application Server.



Support

MOREnet will provide basic support and information for the application hosting environment. In general, basic support covers the server-side aspects of the service and information regarding the environment in which your applications will run. This does not include trouble-shooting or modifying PHP or Perl applications created by your content publishers or programmers.



Application Consulting

If you need assistance perfecting your web-based PHP or Perl applications created by your content publishers or programmers, or if you need to consult on how best to implement a new custom-designed web application, MOREnet can provide consulting assistance as requested. MOREnet application consulting is on a fee-for-service, hourly billed rate. MOREnet will first provide you with an evaluation and estimate of how much time the project or work will take.