Mapnik mod_tile, renderd setup (rendering is not working)

I have been able to successfully run renderd daemon.
Currenlty, mod_tile.conf and mod_tile.load is placed within the apache mod-available and the module is successfully loaded.

Issue is that I am not sure how the on the fly rendering now supposed to work (can someone provide clear details)?
Details are below.
Thanks, I appreciate the support.

=======================================================================================================
renderd.conf


tile_dir=/var/lib/mod_tile ; DOES NOT WORK YET

[default]
URI=/osm_tiles2/ <------------------------------------------- NOT SURE ABOUT THIS???
XML=~/Programs/osm-mapnik/osm.xml

mod_tile.conf


LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so

<VirtualHost *:80>
ServerName localhost

ServerAlias a.tile.openstreetmap.org b.tile.openstreetmap.org c.tile.openstreetmap.org d.tile.openstreetmap.org

DocumentRoot /var/www/html

DocumentRoot  /home/user/public_html/osm_html #<----------------------------------(NOT SURE ABOUT THIS)???  WHAT IS THIS USED FOR

You can either manually configure each tile set

AddTileConfig /folder/ TileSetName

or load all the tile sets defined in the configuration file into this virtual host

LoadTileConfigFile /etc/renderd.conf

=======================================================================================================
render_confg.h

// With directory hashing enabled we rewrite the path so that tiles are really stored here instead
#define DIRECTORY_HASH
#define HASH_PATH “/var/lib/mod_tile” <-------------------------------WHAT IS HASH_PATH

// TILE_PATH is where Openlayers with try to fetch the “z/x/y.png” tiles from
// this is now only used if DIRECTORY_HASH is undefined
//#define TILE_PATH “/var/www/html/osm_tiles2” <-------------------------------WHAT IS THE RELATION BETWEEN HASH_PATH AND TILE_PATH

=======================================================================================================