In loving, living memory, John Melançon 1928 – 2007
aka, when bad code from 3.5 years ago finally comes back to bite you.
The one thing that really hung me up was not seeing PHP errors until i just enabled them, to the screen, server wide. That made everything a lot easier to fix. How much of an idiot am i? is there a log hidden somewhere?
Answer: A big idiot. PHP fatal errors get logged to /var/log/syslog
Bangpound says his chapter on dev environment in Definitive Guide to Drupal 7 covers checking syslog.
http://livingconversations.com/ - times out, never shows up, no message
http://livingconversations.com/CHANGELOG.txt - shows up immediately
INSTALL.txt displays fine.
DanLovesShannon.com on the same server works
No errors in /var/log/apache2/error.log
(and no indication that errors should be logged somewhere else)
removing sites (and so settings.php) brings this
Unsupported database type
The database type is unsupported. Please use either mysql for MySQL 3.x & 4.0.x databases, mysqli for MySQL 4.1.x+ databases, or pgsql for PostgreSQL databases. The database information is in your settings.php file.
For more help, see the Installation and upgrading handbook. If you are unsure what these terms mean you should probably contact your hosting provider.
server1:/sites/livingconversations/www# mysqlcheck -u root -pYek3dacb livingcon_live
livingcon_live.access OK
livingcon_live.accesslog OK
livingcon_live.actions OK
livingcon_live.actions_registry OK
livingcon_live.aggregator_category OK
livingcon_live.aggregator_category_feed OK
livingcon_live.aggregator_category_item OK
livingcon_live.aggregator_feed OK
livingcon_live.aggregator_item OK
livingcon_live.authmap OK
livingcon_live.bio OK
livingcon_live.blocks OK
livingcon_live.blocks_roles OK
livingcon_live.book OK
livingcon_live.boxes OK
livingcon_live.buddylist OK
livingcon_live.buddylist_buddy_group OK
livingcon_live.buddylist_groups OK
livingcon_live.buddylist_pending_requests OK
livingcon_live.cache OK
livingcon_live.cache_content OK
livingcon_live.cache_filter OK
livingcon_live.cache_menu OK
livingcon_live.cache_page OK
livingcon_live.cache_views OK
livingcon_live.captcha_points OK
livingcon_live.client OK
livingcon_live.client_system OK
livingcon_live.comments OK
livingcon_live.contact OK
livingcon_live.contemplate OK
livingcon_live.contemplate_files OK
livingcon_live.content_field_description OK
livingcon_live.content_field_membertype OK
livingcon_live.content_field_resource_link OK
livingcon_live.content_type_bio OK
livingcon_live.content_type_blip_video OK
livingcon_live.content_type_blog OK
livingcon_live.content_type_forum OK
livingcon_live.content_type_image OK
livingcon_live.content_type_link_audio OK
livingcon_live.content_type_link_video OK
livingcon_live.content_type_page OK
livingcon_live.content_type_resource OK
livingcon_live.content_type_story OK
livingcon_live.content_type_top_left_corner OK
livingcon_live.cre_average_vote OK
livingcon_live.cre_similarity_matrix OK
livingcon_live.custom_breadcrumb OK
livingcon_live.file_revisions OK
livingcon_live.files OK
livingcon_live.filter_formats OK
livingcon_live.filters OK
livingcon_live.fivestar_comment OK
livingcon_live.flag_content OK
livingcon_live.flood OK
livingcon_live.forum OK
livingcon_live.forward_log OK
livingcon_live.history OK
livingcon_live.image OK
livingcon_live.image_attach OK
livingcon_live.imagecache_action OK
livingcon_live.imagecache_preset OK
livingcon_live.img_assist_map OK
livingcon_live.invite OK
livingcon_live.locales_meta OK
livingcon_live.locales_source OK
livingcon_live.locales_target OK
livingcon_live.mass_contact OK
livingcon_live.media_mover_config_list OK
livingcon_live.media_mover_configurations OK
livingcon_live.media_mover_files OK
livingcon_live.members_page OK
livingcon_live.menu OK
livingcon_live.node OK
livingcon_live.node_access OK
livingcon_live.node_comment_statistics OK
livingcon_live.node_counter OK
livingcon_live.node_field OK
livingcon_live.node_field_instance OK
livingcon_live.node_group OK
livingcon_live.node_group_fields OK
livingcon_live.node_revisions OK
livingcon_live.node_type OK
livingcon_live.node_voting OK
livingcon_live.nodequeue_nodes OK
livingcon_live.nodequeue_queue OK
livingcon_live.nodequeue_roles OK
livingcon_live.nodequeue_subqueue OK
livingcon_live.nodequeue_types OK
livingcon_live.nodetriggers_actions OK
livingcon_live.nodetriggers_configs OK
livingcon_live.nodetriggers_events OK
livingcon_live.nodetriggers_nodes OK
livingcon_live.nodevote OK
livingcon_live.panels_area OK
livingcon_live.panels_info OK
livingcon_live.permission OK
livingcon_live.poll OK
livingcon_live.poll_choices OK
livingcon_live.poll_votes OK
livingcon_live.premium OK
livingcon_live.profile_fields OK
livingcon_live.profile_values OK
livingcon_live.role OK
livingcon_live.search_dataset OK
livingcon_live.search_index OK
livingcon_live.search_total OK
livingcon_live.send OK
livingcon_live.send_recipient OK
livingcon_live.send_setting OK
livingcon_live.sequences OK
livingcon_live.sessions OK
livingcon_live.system OK
livingcon_live.taxonomy_breadcrumb_term OK
livingcon_live.taxonomy_breadcrumb_vocabulary OK
livingcon_live.term_data OK
livingcon_live.term_hierarchy OK
livingcon_live.term_node OK
livingcon_live.term_relation OK
livingcon_live.term_synonym OK
livingcon_live.tinymce_role OK
livingcon_live.tinymce_settings OK
livingcon_live.url_alias OK
livingcon_live.url_alias_extra OK
livingcon_live.user_activity OK
livingcon_live.usernode OK
livingcon_live.users OK
livingcon_live.users_roles OK
livingcon_live.variable OK
livingcon_live.video OK
livingcon_live.video_rendering OK
livingcon_live.view_argument OK
livingcon_live.view_exposed_filter OK
livingcon_live.view_filter OK
livingcon_live.view_sort OK
livingcon_live.view_tablefield OK
livingcon_live.view_view OK
livingcon_live.vocabulary OK
livingcon_live.vocabulary_node_types OK
livingcon_live.votingapi_action OK
livingcon_live.votingapi_action_condition OK
livingcon_live.votingapi_action_set OK
livingcon_live.votingapi_cache OK
livingcon_live.votingapi_vote OK
livingcon_live.watchdog OK
livingcon_live.xmlsitemap_additional OK
livingcon_live.xmlsitemap_node OK
livingcon_live.xmlsitemap_term OK
livingcon_live.xmlsitemap_user OK
livingcon_live.xmlsitemap_user_role OK
server1:/sites/livingconversations/www#
What. The. Hell.
server1:/sites/livingconversations# wget http://ftp.drupal.org/files/projects/drupal-5.23.tar.gz
--2010-11-15 14:08:37-- http://ftp.drupal.org/files/projects/drupal-5.23.tar.gz
Resolving ftp.drupal.org... failed: Temporary failure in name resolution.
wget: unable to resolve host address `ftp.drupal.org'
server1:/sites/livingconversations# wget http://ftp.drupal.org/files/projects/drupal-5.23.tar.gz
--2010-11-15 14:10:05-- http://ftp.drupal.org/files/projects/drupal-5.23.tar.gz
Resolving ftp.drupal.org... failed: Temporary failure in name resolution.
wget: unable to resolve host address `ftp.drupal.org'
***
disabled all the sitemap modules
disabled Upload progress
and views export
debian php log errors to screen
Fatal error: Cannot break/continue 1 level in /sites/livingconversations/www/sites/default/themes/sky/template.php on line 317
Caused by the $rss not being made (which hadn't happened for three years):
<?php
$full_node = node_load($node->nid);
if (isset($full_node->media_mover[2][0]['storage_file'])) {
$url = $full_node->media_mover[2][0]['storage_file'];
$rss = file_get_contents($url .'?skin=rss');
if (!$rss) break;
$needle = '';
$needle_length = 21; // strlen($needle);
$loc = strpos($rss, $needle, 200);
$loc = $loc + $needle_length;
$needle2 = '';
$loc2 = strpos($rss, $needle2, $loc);
$length = $loc2 - $loc;
$thumbnail_url = substr($rss, $loc, $length);
}
?>
removed
global $user; if ($user->uid == 1) drupal_set_message('Get the view: '.print_r($view,TRUE).'');
which output:
stdClass Object
(
[vid] => 9
[name] => homevideo
[description] => The Video for the homepage
[access] => Array
(
)
[page] => 1
[page_title] => Story of the Day
[page_header] =>
[page_header_format] => 1
[page_empty] =>
[page_empty_format] => 1
[page_footer] =>
[page_footer_format] => 1
[page_type] => list
[use_pager] => 0
[nodes_per_page] => 1
[url] => view/homevideo
[menu] => 0
[menu_tab] => 0
[menu_tab_weight] => 0
[menu_title] =>
[menu_tab_default] => 0
[menu_tab_default_parent_type] => tab
[menu_parent_title] =>
[menu_parent_tab_weight] => 0
[block] => 1
[block_title] => Story of the Day
[block_use_page_header] => 0
[block_header] =>
[block_header_format] => 1
[block_use_page_footer] => 0
[block_footer] =>
[block_footer_format] => 1
[block_use_page_empty] => 0
[block_empty] =>
[block_empty_format] => 1
[block_type] => list
[nodes_per_block] => 1
[block_more] => 0
[breadcrumb_no_home] => 0
[changed] => 1206714874
[view_args_php] =>
[is_cacheable] => 1
[sort] => Array
(
[0] => Array
(
[vid] => 9
[position] => 0
[field] => node.random
[sortorder] => ASC
[options] =>
[tablename] =>
[id] => node.random
)
)
[argument] => Array
(
)
[field] => Array
(
[0] => Array
(
[vid] => 9
[tablename] => node_data_field_blip_video
[field] => field_blip_video_embed
[label] =>
[handler] => content_views_field_handler_ungroup
[sortable] => 0
[defaultsort] => 0
[options] => video_preview
[position] => 0
[fullname] => node_data_field_blip_video.field_blip_video_embed
[id] => node_data_field_blip_video.field_blip_video_embed
[queryname] => node_data_field_blip_video_field_blip_video_embed
)
[1] => Array
(
[vid] => 9
[tablename] => bio
[field] => title
[label] =>
[handler] => views_handler_field_nodelink
[sortable] => 0
[defaultsort] => 0
[options] => nolink
[position] => 1
[fullname] => bio.title
[id] => bio.title
[queryname] => bio_title
)
)
[filter] => Array
(
[0] => Array
(
[vid] => 9
[tablename] =>
[field] => node.type
[value] => Array
(
[0] => blip_video
)
[operator] => OR
[options] =>
[position] => 0
[id] => node.type
)
[1] => Array
(
[vid] => 9
[tablename] =>
[field] => node.status
[value] => 1
[operator] => =
[options] =>
[position] => 1
[id] => node.status
)
)
[exposed_filter] => Array
(
)
)