HTML5: new tag attributes

HTML5 Logo

In previous articles I have tried to explain which new tags HTML5 allows us to use, but there are also lots of new tag attributes that are available, it is at least as important to know those new attributes as it is to know the new HTML5 tags.

HTML5 deprecated tags

It's good when you know the new HTML5 and use them, but there are also tags that are not supported anymore, you should avoid using them and remove them from your content when you do an update.

Tags not supported by HTML5 anymore:

HTML5 new tags: section, article, aside, hgroup, header, footer, nav, figure, figcaption

HTML5 Logo

Here is a list of new HTML5 tags that were not present in previous versions of html like xhtml 1.1 or html4.

Other articles in this series about new HTML5 tags are "HTML5 new tags and old tags with new behavior: ruby, rt, rp, bdi, wbr, canvas, command, menu, details, summary, datalist, keygen, output, address, div" and "HTML5 new tags: video, track, embed, object, mark, progress, meter, time".

Can I use the new HTML5 now?

Yes you can, but you need to use the HTML5shiv javascript for IE lower then version 9, or use modernizr where the HTML5 shiv is built in. The shiv script is a little javascript that enables HTML5 in browsers older then ie9. The advantage of using the new HTML5 right now is the semantic plus they will give you, it's always good to add semantic value to content because it can enhance your SEO quality.

step 8: install mongodb

first create a repository file for the 10gen repo:

# vi /etc/yum.repos.d/10gen.repo

press the "i" key to go into edit mode

paste the following content into the editor

name=10gen Repository

step 6: install and configure php5, php-fpm and apc

php-fpm logo

We have just installed Nginx and now we want to host the php application we made. This is when php-fpm comes into play. Since the day i started playing around with php-fpm i loved it. You install php-fpm and then using the powerful configuration files you can setup multiple vhost on a single machine. Each php-fpm pool, can have it's own socket or run on it's own port, you can setup a different user and group for each pool and put as many ftp-users in that group as you want. You can even chroot the directory you as nginx public web directory, have an own php-ini per vhost and therefore also setup a different sessions folder for each pool.

install php5 and php-fpm:

php-fpm (PHP fastCGI process manager) is available in the remy repo which depends on the epel repo:

I wanted the remi repo "Enterprise Linux 6 (with EPEL)" package, you may have to use another one depending on your OS and version, i used centos6 and therefore choosed to use the following commands:

step 5: install and configure nginx

Nginx logo

NGINX is much more then just a server like Apache, that's probably why it gained so much market share over the few last years if you trust the Netcraft server market share statistics.

NGINX has two advantages over Apache, first one is super fast, second one it's consumes less resources then Apache. Those are two important wins in two areas that really matter when having to decide which server to choose when getting started. Nginx is so fast because it's event driven. You may already have seen how javascript uses events and asynchronous loading of data. Nginx is similar to this, it emits a request, but doesn't wait all the time for a response keeping the connection open. Nginx requests something, then closes the connection and does something else. But in the request is a callback. So when the requested data is ready the nginx callback gets called and the response is send through a new connection to nginx. This is why nginx can handle such a lot of connections.

But as i said NGINX is more then just a server. The powerful configuration mechanism lets you setup NGINX to be a proxy server for one or multiple apache servers. You can use it as load balancer for multiple node.js instances or "just" use it as normal server to host your php website. If it's a php website you want to host.

step 4: configure bind

First of all you need to find your named.conf (the bind configuration file)

There is tool called "locate" on your system that is useful to find files, but every time your add or delete a file, you need to update "locate"'s files database, to do so type:

# updatedb

now use the following command to find the named.conf file:

# locate named.conf