AMP: Novell Pumps up the Volume on Open Source - Page 2
We will now discuss some Novell extensions and standard features for each of the four components -- Apache, MySQL, PHP, and Perl -- in the AMP suite.
Apache HTTP (Web) Server, based on the old NCSA Web Server, has been available since 1995. It is overflowing with features "out of the box" such as built-in CGI, Perl, PHP, Java Servlets, Server-Side Includes (SSI), Multi-homed support, customized logging/error messages, and much more. Apache's most popular features include:
- Highly extensible and configurable web server -- Using the Apache API, you can create or use third-party modules to provide additional functionality. Configuration is handled by changing values in various text files. The main file is httpd.conf. These files also have numerous command line arguments that can be set.
- Multi-platform support/portability -- This includes various flavors of UNIX, Windows, Mac OS X, and others.
- Robust and scalable server performance -- This includes Multi-process Modules (MPM) that are operating system-specific.
- Strong security -- SSL support, granular file access protection (i.e. host name, IP address, group), and more.
Netware-specific Apache features
- Apache Farm configuration administration can be done using eDirectory
- LDAP and caching modules
- Two sample applications, PHPMyAdmin, a GUI-based MYSQL database and server manager, and John's LDAPWeb, an LDAP tree browser compatible with eDirectory
MySQL was developed by TcX in 1996. It has become a popular multi-threaded relational database and management system that offers:
- Robust and scalable performance -- Support for many simultaneous connections.
- Comprehensive database functionality -- Support for commit, rollback, crash-recovery, row-level locking, database replication, query caching and more.
- Very strong security -- SSL encryption, ability to limit access by columns/rows, ability to limit host privileges, etc.
- Multiple platform support/portability -- This includes various flavors of UNIX, Windows, and Mac OS X, as well as support for ODBC, C++, Perl, JDBC, ANSI SQL 92, PHP, etc.
Netware-specific MySQL features
- Particularly useful for MySQL application vendors, AMP MYSQL includes a commercial license for MySQL.
- PHPMyAdmin for MySQL management.
- Nakoma will likely include disk/hardware features such as MySQL cluster failover, the ability to implement cluster architecture to eliminate single points of failure, and dramatically improved performance.
- The Perl directory tree includes a script called mysql.pl used as a starting point for creating MySQL queries, as well as other scripts to access other types of databases (Oracle,Btrieve, etc.) and network volumes.
PHP or PHP: Hypertext Processor -- In 1995 Rasmus Lerdorf created PHP as a server-side scripting language that doesn't require sysadmin privileges (PHP originally stood for Personal Home Page). The highly portable language is currently supported on many UNIX flavors, Windows, and other environments with built-in seamless connectivity with other databases, standards, and programming languages.
It is simple to use and integrates well with HTML. For example, the following PHP script:
<?php echo "<b>PHP rocks</b>"; ?> produces the HTML code: PHP rocks. PHP can easily be used to add dynamic features to existing static HTML web pages. Server-Side Include (SSI) support allows PHP code to be stored in one file and invoked from multiple places like CGI scripts. It also has stronger security features "out of the box" than CGI scripting languages.
Netware-specific PHP features
Novell has successfully tested the following third-party PHP and Perl scripts: PHProjekt, PHPNuke, XOOPS, and Incyte Project Manager. Many other scripts will work with AMP as well, including a large collection available from neumann.gne.de. Novell has conveniently included PHP extensions for LDAP access, MySQL access, SMTP mail access, and a webdemo directory that contains some sample scripts to try out (FTP session, LDAP Query, etc.).
Perl was created in 1987 by Larry Wall as a reporting, extraction, and utility language.
- Multiple platform support/portability -- This includes support for many UNIX flavors, Windows, Mac OS X, and other environments.
- Extensive interoperability with other software -- Interoperability with third-party databases through DBI interface, network sockets, C/C++, LDAP, NNTP, HTML, and much more. Powerful data extraction and reporting capabilities make it a particularly attractive platform. It leverages the strengths of the best languages in the UNIX world.
- Strong security support -- This includes access control, TaintPerl to check for security holes, and support for secure setuid and setgid scripts.
Netware-specific Perl features
Perl will execute any scripts located in or under
sys:\perl\web\. Perl can run any scripts from the system console command line if they are located in or under the
sys:\perl\scripts. If scripts are stored in sys:\perl web directory, then they can be run from a Web browser with the following command:
Novell has included a number of modules to access databases. The DBD:mysql module is specifically for MySQL access, but Pervasive.SQL 2000 and MS-Access are accessible as well. For other databases, UCX (Universal Component Extension) and other methods are also provided. Novell has also provided a LDAP module to access eDirectory.