Hi Dan,
The WordPress loop is the code that starts with something like this:
<?php if(have_posts()): while(have_posts()) : the_post(); ?>
and ends with something like this:
<?php endwhile; endif; ?>
If you copy and paste the above code, and all code in between, from your index.php file into a blank txt file (and save it as a backup) and then copy and paste the same code from page.php and paste it in place of the code on index.php, you may be able to then see blog posts (as long as you have published posts).
We have established, by looking at your website, that page.php is functioning correctly, as it is being used to generate your subpages.
I hope this helps.
Cheers,
Matt.