I have a block that is generated by a view. It brings in the author's name and other information for the specific node that is being viewed. The problem is that the block data is not indexed by drupal since it is not in the "content" of the page. How can I get around this? I tried moving the region to the node.tpl.php but that didn't help. Any suggestions would be great.
You can use the Search by page module but according to this post, the only way to do it is to move your blocks into your theme rather than use the GUI - not really a glamorous solution at all, more of a hack.
But, if you're interested:
$block = block_load('block', 'ID'); print drupal_render(_block_get_renderable_array(_block_render_blocks(array($block))));
where ID is the if of the block you want to output.
This module allows you to specify content type(s) as being a block. This allows the content managers of the site to edit the block text and title without having to access the block administration page.
Side effect of managing blocks' content like that is exactly what you want: they can be indexed in search, as they are, in fact, nodes.
If you have dynamically created blocks, you could try to use API provided by Bean module - it works the other way around, exposes blocks as entities, instead of entities as blocks. And if it will not work, well, at least you could use it as an example code for entity <-> block mapping.