Mac OS 10.5 Leopard – Part 3: My weird Mail.app dialog box pondering

I’ve previously posted pictures in my Flickr account of the dialog boxes that appear when erasing Junk mail and erasing deleted messages in Tiger’s Mail.app. Interestingly in Leopard they’ve been updated to make the text clearer but there’s still an inconsistency in the naming of these dialog boxes and also the type of dialog boxes used for each.

Erasing junk messages uses a modal dialog box with buttons with the words ‘Cancel’ and ‘Erase’ on them, Tiger’s Mail.app used buttons with the words ‘No’ and ‘Yes’ on them instead. I still don’t see why these dialog boxes aren’t the same type and why they don’t use the same buttons and wording.

Erase Junk messages:

Picture of Leopard erase junk mail dialogue box

Erase Deleted Messages dialog box

Picture of Leopard erase deleted messages dialogue box

Mac OS 10.5 Leopard – Part 4: Software update

Here’s another thing I noticed about Leopard since running it for a couple of weeks.

Software update – Postpone reboot

It’s nice that Leopard’s Software Update gives you the chance to postpone rebooting after installations that require it. On Tiger and previous versions you would always have the windows hanging around until you made it reboot. I’ve also noticed that when you do reboot that the computer gives you more feedback on the installation as it proceeds which is cool too. It’s nice to be kept informed!

Picture of Leopard Software update reboot dialogue box

Configuring Apache 2 with Virtual Hosts on Mac OSX Leopard

I recently installed Leopard on my development machine by doing a completely fresh install in order to have a clean system. One thing I found that I couldn’t get running correctly was recreating my preferred Apache web server setup including Virtual Host configuration. Leopard runs Apache 2 by default but I had been running this on Tiger anyway rather than the default Apache 1.3.

Problem #1: Access denied using custom DocumentRoot

My first problem was that I like to use a different location for the DocumentRoot configuration, I keep my site files in ‘Users/rickcurran/Documents/Client_Data’ located in my Documents folder in my user account rather than in the default ‘Library/Webserver/Documents’ location. The problem I encountered was that if I changed the DocumentRoot to point to my preferred location I got a ‘Forbidden – You don’t have permission to access / on this server’ message. I tried to get it working and just gave up for a while and used the standalone MAMP application in the mean time to get working because this had no problem pointing to my custom DocumentRoot location.

Solution to #1: Change the user that Apache webserver runs as

I eventually figured out that in Leopard Apache’s default user (www) doesn’t have permissions to access my Documents folder. I simply went and changed the User and Group settings in the httpd.conf file to use my user and group and then it worked fine. I’m sure you could probably add the default Apache user to a group or some other Users / Groups / Permissions setting but for a development machine this solution works fine!

Problem #2: An alternative to name-based virtual hosts avoiding netinfo / hosts files

I like to have all my sites both current and past projects running locally so that I can fix any bugs etc without having to work on live sites. Apache’s Virtual Host configuration is perfect for the job. At first under leopard I just couldn’t get them to work but I realised that I’d simply missed something out in the configuration, so it was more a human error really. However whilst Googling trying to figure out what I’d done wrong it reminded me that most tutorials on configuring Virtual Hosts under Apache do so by using name-based hosts which require you to edit the ‘/etc/hosts’ file (or via Netinfo Manager on Tiger).

The drawback to this technique is that the sites are only viewable on your development machine, if other users on your network want to view the development sites they need to configure their own hosts file. This is a problem when you’ve got several machines that need to access the sites.

Solution to #2: Port based virtual hosts

To get around the hassle of Netinfo / hosts configuration I use an alternative virtual hosts setting which uses a different port for each site and can be accessed on any machine on the network.

To set up port based virtual hosts you need to first uncomment a line in the main httpd.conf to enable virtual hosts in the first place. Next edit the ‘httpd-vhosts.conf’ file found in ‘/etc/apache2/extra/httpd-vhosts.conf’, comment out the example virtual hosts that are there by default and then add your virtual hosts in the following way:

<VirtualHost *:80
DocumentRoot "/Users/rickcurran/Documents/Client_Data/intranet"
</VirtualHost>

Listen 8081
<VirtualHost *:8081>
DocumentRoot "/Users/rickcurran/Documents/Client_Data/myexamplesite_co_uk"
ServerName 192.168.0.2:8081
</VirtualHost>

The first sets a default virtual host on port 80, the second sets up a site on port 8081. The examples above are very basic configurations, you could add support for error logs etc but this gets them up and running.

Restart Apache by unchecking and rechecking the Web Sharing tickbox in the Sharing System Preference you should then be able to access the ‘myexamplesite_co_uk’ site by using the URL ‘http://localhost:8081’. Also anybody else on the network can access the site too without messing around with the ‘etc/hosts’ file!

Scared to edit httpd.conf etc? Try HeadDress VirtualHostX

Update: It seems as if HeadDress is no more, the website has been down for ages so I’ve updated this section to refer to another app called VirtualHostX. If you don’t like editing config files via the Terminal then there’s a nice application called HeadDress VirtualHostX that gives a nice user interface for the whole process of setting up Virtual Hosts. VirtualHostX allows you to create sites running on their own local domain name by editing your /etc/hosts/ file, you can also specify a specific port for the site too.

I still prefer using my own method #2 above as it allows multiple users on your local network to view your sites as well, whereas with VirtualHostX you’d need everyone to edit their /etc/hosts/ file. For single machine web development it’s a great application and costs only $9.00 for a licence.

Mac OS 10.5 Leopard – Part 2: Saving PDF documents

Mac OSX supports PDF natively and has always handled them quite well, one very useful feature is being able to save a PDF version of a document. This is done by simply selecting Print and then clicking on the little ‘PDF’ button in the lower left of the resulting dialog box, you then get a pop up menu with several options, the one at the top being "Save as PDF…". Give it a file name, hit save and there you go, a PDF copy of your document!

Leopard improves this PDF workflow by giving the ability to add meta data such as Title, Author, Subject and Keywords in the document more prominence by putting the fields right there in front of you as part of the Save process.

Save as PDF dialog box

A further improvement is the addtion of a ‘Security Options’ button that then allows you to restrict access to the PDF by requiring a password. You can restrict the opening of the document as well as copying and pasting text or printing the document.

PDF security options

A lot of the improvements in Leopard are the many smaller details that have been improved, these extra PDF functions make it even less essential to have any third-party PDF applications.

One feature that’s still missing is the ability to save PDF form data and re-open it – a feature that’s missing from the free Acrobat Reader too. Why this type of saving is not available in Acrobat Reader is a mystery to me, and one that is a great hinderance to the use of PDF in some of my client’s workflow.

Mac OS 10.5 Leopard – Part 1: Safari form field warnings

This is the first of a few posts about things I’ve noticed since I started using the new version of Mac OS 10.5. There’s a lot of changes in the OS, as you’d expect given that it is a major new release and 2½ years in the making, I’ve been picking up on some of the visual changes / user interface changes since the previous version.

Safari’s form field warnings

The new version of the Safari web browser in 10.5 boasts quite a lot of changes, one that I noticed was that it gives warnings if you try to close, reload or quit when you have started entering text into any text fields on the page. These are very simple changes but they are very useful.

Quitting Safari warning:

Leopard - Quit Safari - text input warning

Reload page warning:

Leopard Safari - Reload page - text warning

Close browser window warning:

Close Window - text input warning

Mac OS 10.5 Leopard in the wild

Picture of Mac OSX Leopard BoxWell it’s almost been a week since the newest version of Apple’s Mac OSX operating system was released. 10.5, or Leopard as it’s commonly known is the sixth version of Mac OSX to be released in a six year time frame, which is a pretty amazing feat really.

I’ve only been using it for a few days but I was instantly very impressed with it, I’ve been capturing screen shots of various things as I go along which I will blog about over the next few days. In the mean time here’s a couple of links to check out, especially if you’ve never used OSX before or don’t know anything about the new version:

~Rick

Thoughts on WWDC07 keynote announcements / rumours

Rumours of iTunes movie rentals

If this turns out to be true then it means the FairPlay DRM scheme must now have the ability to do time-limited control of playback capabilities. This will definitely make a good addition for those with an AppleTV. If this story is true then the BBC iPlayer team should go talk to Apple right now!

Safari for Windows

Wow, I hadn’t thought about this, but seeing as Adobe’s Apollo (now known as AIR) initiative uses WebKit and runs cross-platform then it makes sense that a native Windows version of Safari would be possible. This will be very handy for web developers ‘stuck’ on Windows! It’s available now as a beta for OSX and Windows.

OSX 10.5 Leopard preview

Great looking set of features in there, I’m really liking the changes to the look and feel of the user interface. The iTunes-esque Finder looks to be a good update, I’m wondering how well those who really hate the current finder will take to this, will it be an improvement or not? I’ve not seen any concrete evidence that the Finder has been substantially rewritten, will this be the end of spinning beachballs when network volumes disappear?

~Rick