Things you should know
- Apache Web Server. Apple has upgraded its Apache Web Server from 1.3.33 to 2.2.6. In addition, the location of httpd.conf has moved from /etc/httpd/httpd.conf to /etc/apache2/httpd/httpd.conf. If you upgraded from Mac OS 10.4 to Leopard, you will also need to copy your users from /etc/users to /etc/apache2/users/; otherwise, you won’t have access to your Sites Folder. Also, virtualhosts, formerly in /etc/httpd/virtualhosts is now /etc/hosts.
- PHP5. Apple cut corners when it compiled PHP5 for Leopard. In addition, the php.ini file is now in /etc as php.ini.default. Many people are finding that Apple’s brand of PHP5 no longer helps them display their sites properly. One example: No support for the GD Library. Second example: Apple did not compile PHP 5 with the mcrypt extension, which is used by PhpMyAdmin. But all is not lost: Watch this site for a Leopard-friendly PHP5 (not yet finished). The latest release of PHP5 for Leopard: Click here to download. (Currently in version 2). Instructions on how to install this version of PHP5 are here. Alternately, you can use MAMP or XAMPP for Mac OSX to run your server until someone comes up with a decently compiled PHP5 for Leopard. You can bet Apple isn’t interested in beefing up PHP5, or it would have done it with the release of Leopard (maybe because there’s more money in it for Apple if people buy their $399 OS X Server software).
- MAMP’s contents: Apache, PHP and MySQL.
- XAMPP for Mac OS X contains: Apache 2.2.6, MySQL 5.0.45, PHP 4.4.7, PHP 5.2.4, Perl 5.8.8, ProFTPD 1.3.0a, phpMyAdmin 2.11.1, OpenSSL 0.9.8e, GD 2.0.35, Freetype 2.3.5, libjpeg 6b, libpng 1.2.18, libungif-4.1.4, zlib 1.2.3, expat 2.0.1, Ming 0.3, Webalizer 2.01-10, pdf class 009e, mod_perl 2.0.3, SQLite 3.4.0, phpSQLiteAdmin 0.2, libiconv-1.11, gdbm-1.8.3, libxml-2.6.29, libxslt-1.1.21, openldap-2.3.36, imap-2004g, gettext-0.16.1, libmcrypt-2.5.8, mhash-0.9.9, curl-7.16.4, zziplib-0.10.82, bzip2-1.0.3, freetds-0.64.
- MAMP’s contents: Apache, PHP and MySQL.
- X11. Apple changed the way it handles X11 programs. If you use X11, you’ll find neither Fink nor DarwinPorts (now MacPorts) has many packages that can successfully install X11 programs in Leopard (or for that matter, much of anything at all). Both organizations will have to come up with more modern installers. MacPorts is everywhere on Google claiming you can use their “ports” to install all things Leopard, but that’s more PR than truth. If you want to prove it for yourself, try to install something using MacPorts. At least Fink has come up with a new interim installer, and is therfore able to install more packages than the now-lethargic MacPorts. Even so, Fink’s packages repositiory is suspended, so no new packagaes are currently being added. Bottom line, both organizations need to “kick it up a notch,” as Chef Emeril Lagasse says, and update their installers and packages to make them friendly with Leopard — now.
Programs Behaving Badly
- MySQL. One of the changes noted in Leopard is its interaction with, specifically, MySQL 5.0.4.5. For some reason, programs relying on MySQL databases do not “see” MySQL from the usual spot (localhost, port 3306). What does work, however, is designating “127.0.0.1″ instead of “localhost.” Strange, indeed. The MySQL server daemon in System Preferences does not respond to your attempt to shut it down or turn it on. You have to either attempt to stop the server via Terminal, or disable startup when your computer starts up. This is a problem when you’re using an alternative server, such as MAMP or XAMPP for Mac OS X. If you leave the MySQL server running, MAMP and XAMPP will function, but their MySQL programs will not function normally; but will, instead, use any running instance of MySQL.
- PhpMyAdmin. All versions. You need to change the location of MySQL to “127.0.0.1,” and not “localhost”. It doesn’t end there. For some reason, Apple did not compile PHP 5 with the mcrypt extension, which makes Blowfish work in PhpMyadmin — a glaring security breach. What does work: Download and install MySQL Administrator (also referred to as MySQL GUI Tools). You can create databases, assign users and assign privileges for those users. The Administrator is just as easy to use as phpMyAdmin. You can download MySQL Administrator here. This should hold you until the phpMyAdmin come up with a more Leopard-friendly version.
- AWSTATS. The location of Apache log files has changed in Leopard. You’ll need to adjust the locations in the Awstats config.php file to show the new location of the combined log location as /var/log/apache2/web_log that you stipulate in the httpd.conf file. In Leopard, Awstats works perfectlly well in the CGI-Executables folder. Remember to set your log files to be written in that directory instead of /var. It’s also helpful to put awstats inside its own folder in the CGI-Executables folder and chmod it to 777 (or it won’t work because it needs 777 to write the Awstats log files to). Note: There’s a pre-Leopard “how-to” for Awstats that will help you with configuring Awstats for Mac OS X. Although it’s outdated, it still contains useful information and important concepts. Just adapt to the locales in Leopard as you follow the tutorial. The site is here.
More information
You’ll find an excellent tutorial about the new twists and turns of Leopard here.