pablowerk
-
Posts
3 -
Joined
-
Last visited
Posts posted by pablowerk
-
-
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>
-
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.
Relative Paths And Define Base_Uri / Base_Url Problem
in Effortless E-Commerce with PHP and MySQL
Posted
@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:
and not something like: