Jump to content
Larry Ullman's Book Forums

pablowerk

Members
  • Posts

    3
  • Joined

  • Last visited

Posts posted by pablowerk

  1. @Edward, the mod rewrites are working. By going to http://localhost:8080/ecom01/shop/coffee/ the page does display the content from the database, the includes/header.html, and includes/footer.html files.

     

    The problem is that all the relative links for the css, images, and page links, do not resolve/show.

     

    @Antonio Conte, I am not exactly following you. I did try changing my BASE_URI and BASE_URL values, but I don't see those values affecting anything. According to the book, the includes/header.html file doesn't reference those vars anywhere? For example the css link is:

    <link href="/css/style.css" rel="stylesheet" type="text/css" />

    and not something like:

    <link href="<?php echo BASE_URI ?>/css/style.css" rel="stylesheet" type="text/css" />

  2. The /shop/ folder is a virtual folder and with the following mod_rewrite, navigates the requests to the shop.php file.

     

    <IfModule mod_rewrite.c>
    RewriteEngine on
    # For sales:
    RewriteRule ^shop/sales/?$ sales.php
    # For the primary categories:
    RewriteRule ^shop/([A-Za-z\+]+)/?$ shop.php?type=$1
    # For specific products:
    RewriteRule ^browse/([A-Za-z\+\-]+)/([A-Za-z\+\-]+)/([0-9]+)$ browse.php?type=$1&category=$2&id=$3
    # For HTTPS pages:
    RewriteCond %{HTTPS} off
    RewriteRule ^(checkout\.php|billing\.php|final\.php|admin/(.*))$ https://%{HTTP_HOST}/$1 [R=301,L]
    </IfModule>

  3. I have been reading through all the URI based posts but I still can’t get the Coffee site example working on my local machine. I have my site located here: C:\apache\htdocs\eCom01\

    I have the following setup in my config.php file:

    define('BASE_URI','C:/apache/htdocs/eCom01/');
    define('BASE_URL','http://localhost:8080/ecom01/');
    define('MYSQL','includes/mysql.inc.php');
    

     

    When I view http://localhost:8080/ecom01/shop.php all images display and data is being pulled from the database. Here’s what the relative links look on this shop.php file:

    require('./includes/config.php');
    include('./includes/header.html');
    require(MYSQL);
    

     

    Inside my header.html file I have tried to setup the links 2 different ways:

    <li><a href="/shop/coffee/">Coffee</a></li>
    <li><a href="./shop/goodies/">Goodies</a></li>
    

     

    When I click the Coffee link, I get a NOT FOUND error

    (The requested URL /shop/coffee/ was not found on this server.)

    Somehow it is dropping the “/eCom01/” folder…

     

    When I click the Goodies link, the page displays all the content from the database, but does not display the css file or any of the pictures.

     

    I have been trying to trouble shoot this, but cannot come up with a fix. I have tried defining the BASE_URI and BASE_URL to many different values, but no matter what I set those to, I get the same results. I also added an

    echo $_SERVER['DOCUMENT_ROOT'] ;

    command on the shop.php file. This always displays “C:/apache/htdocs”

     

    I am assuming this issue has something to do with setting the BASE_URI and URL items, but I can’t figure it out. Even if I comment out those 2 lines, the mySql connection still works. Is there some setting I have change in my apache configuration file to allow these changes? When I change these URI and URL variables, shouldn’t the

    $_SERVER[‘DOCUMENT_ROOT’]

    reflect them?

     

    Any and all help is appreciated.

×
×
  • Create New...