here might be easier, more concise, and better ways to do these, but these entries work for me


Force http://yourdomain.com to http://www.yourdomain.com

<VirtualHost *:80>
    ServerName www.yourdomain.com
    ServerAdmin admin@yourdomain.com
    DocumentRoot /var/www/yourdomain/
    ErrorLog logs/error_log
    CustomLog logs/access_log combined
    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^(www\.|localhost)
    RewriteRule ^(.*) www.%{HTTP_HOST}$1 [C]
    RewriteRule (.*) http://$1 [L,R=301]
</VirtualHost>

Force incoming traffic to port 443 (https)

NameVirtualHost *:80
NameVirtualHost *:443

<VirtualHost *:80>
    ServerName phpmyadmin.yourdomain.com
    ServerAdmin admin@yourdomain.com
    DocumentRoot /var/www/phpmyadmin
    ServerName phpmyadmin.yourdomain.com
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]
    ErrorLog logs/phpmyadmin-error_log
</VirtualHost>

<VirtualHost *:443>
    ServerName phpmyadmin.yourdomain.com
    ServerAdmin admin@yourdomain.com
    DocumentRoot /var/www/phpmyadmin
    ServerName phpmyadmin.yourdomain.com
    SSLEngine on
    SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
    SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
    CustomLog logs/ssl_request_log \
           "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

Run nagios without requiring the /nagios directory (e.g. http://nagios.yourdomain.com instead of http://nagios.yourdomain.com/nagios)

<VirtualHost *:80>
ServerName nagios.yourdomain.com
    ServerAdmin admin@yourdomain.com
    DocumentRoot /usr/local/nagios/share
    ErrorLog logs/nagios-error_log
    ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"

    <Directory "/usr/local/nagios/sbin">
           Options ExecCGI
           AllowOverride None
           Order allow,deny
           Allow from all
           AuthName "Nagios Access"
           AuthType Basic
           AuthUserFile /usr/local/nagios/etc/htpasswd.users
           Require valid-user
    </Directory>
    <Directory "/usr/local/nagios/share">
           Options None
           AllowOverride None
           Order allow,deny
           Allow from all
           AuthName "Nagios Access"
           AuthType Basic
           AuthUserFile /usr/local/nagios/etc/htpasswd.users
           Require valid-user
    </Directory>
</VirtualHost>