Why hook_preprocess_html() isn't working? Why hook_preprocess_html() isn't firing in my module file? Is it only works in theme_hook?

EDIT:

function my_module_preprocess_html(&amp;$variables) { 
  if (current_path() == 'user') { 
    $variables['head_title'] = implode(' | ', array(drupal_get_title(),  variable_get('site_name'))); 
  } 
}
Try the general preprocess hook, like:

/**
 * Implements hook_preprocess().
 */
function my_module_preprocess(&amp;$variables, $hook) {
  if ($hook == 'html') {}
}