Sidebar only shows up on blog page

The error you are getting is because you must add the registered sidebar to widgets_init.

add_action( 'widgets_init', 'wpa199335_page_sidebar' );

function wpa199335_page_sidebar(){
        'name' => __( 'Page Sidebar'),
        'id' => 'page',
        'description' => __( 'Displays on the side of pages with a sidebar' ),
        'before_widget' => '<div class="widget">',
        'after_widget' => '</div>',
        'before_title' => '<h2 class="module-heading">',
        'after_title' => '</h2>'

That will only register the area to put widgets into. For the sidebar to display on a page you will need to use the following in a template file or your functions.php.

dynamic_sidebar( 'page' );