New path creation through hook menu problem I have installed Drupal 7. I created new module (.module file and .info file), enabled the module, and gave the permission to menu item also. If I go to localhost/siva/shop/catalog/products, it redirects to the home page.

function displayproducts_menu() {
  $items = array();

  $items['shop/catalog/products'] = array(
    'title' =&gt; 'Products',
    'description' =&gt; 'Configure the cart page display and settings.',
    'page callback' =&gt; 'drupal_get_form',
    'page arguments' =&gt; array('displayproducts_show_form'),
    'access arguments' =&gt; array('view displayproducts'),
    'file' =&gt; 'uc_cart.admin.inc',
  );
  return $items;
}

function displayproducts_permission() {
  $perms = array(
    'view displayproducts' =&gt; array(
      'title' =&gt; t('view displayproducts'),
    ),
  );

  return $perms;
}

function displayproducts_show_form(){
    echo "hello world";
}


Why does this happens?
You form function callback is incorrect you need to return a valid form, try this code:

function displayproducts_show_form($form, &amp;$form_state){
  $form['item1'] = array(
   '#markup' =&gt; "hello world",
  );
  // @TODO: include more form items.
  return $form;
}


Documentation: FAPI

Make sure that this function is in your uc_cart.admin.inc file as you indicate in the hook menu declaration: 'file' =&gt; 'uc_cart.admin.inc', if it is in your main module file (.module) remove this line and clear the caches again.