Jump to content
Larry Ullman's Book Forums


  • Posts

  • Joined

  • Last visited

pablowerk's Achievements


Newbie (1/14)



  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...