Je veux créer mon propre système de routage avec .htaccess
, mais j'ai quelques problèmes.Routage .htaccess
Ma structure de dossier est:
.htaccess
| - Système
| - contrôleur
| - thème
| - domain.dk
| --- gfx
| --- style
| --- html
Comment puis-je faire mon .htaccess
à droite? Utiliser le routage aussi?
Mon .htaccess
ressemble à ceci:
RewriteEngine On
php_value zlib.output_compression 16386
RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule (.*) http://%1/$1 [R=301,L]
RewriteRule ^api/(.*)?$ /system/api/$1
RewriteRule ^image/(.*)?$ /theme/%{HTTP_HOST}/gfx/$1
RewriteRule ^data/(.*)?$ /theme/%{HTTP_HOST}/data/$1
RewriteRule ^style/(.*)?$ /theme/%{HTTP_HOST}/include/$1
RewriteRule ^javascript/(.*)?$ /theme/%{HTTP_HOST}/include/$1
RewriteRule ^files/(.*)?$ /theme/%{HTTP_HOST}/files/$1
# Sitemap & robot building
RewriteRule ^xml-sitemap /system/sitemap.php
RewriteRule ^sitemap.xml /system/sitemap.php
RewriteRule ^robots.txt /theme/%{HTTP_HOST}/data/robot.txt
# Selecetet lang
RewriteRule ^l-([a-z]+)/([a-zA-Z0-9\-_]+)/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=$2&title=$3&lang=$1
RewriteRule ^l-([a-z]+)/([a-zA-Z0-9\-_]+)?$ /system/cms.php?tag=$2&lang=$1
# Bilinfo - modul
# RewriteRule ^mBiler?$ /system/index.php?modul=bilinfo&method=cars
# RewriteRule ^mBiler/ck([0-9]+)\-([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=bilinfo&method=car_single_view&id=$1&title=$2
# RewriteRule ^mBiler/c([0-9]+)\-([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=bilinfo&method=cars_list_view&id=$1&title=$2
# Customer modul rewirte here
RewriteRule ^customer-page?$ /system/index.php?modul=customer&method=login_screen
RewriteRule ^customer-option?$ /system/index.php?modul=customer&method=customer_option
RewriteRule ^customer-view-invoice/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=customer&method=view_single_invoice&guid=$1
RewriteRule ^invoice-cancel/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=customer&method=cancel_invoice&guid=$1
RewriteRule ^customer-main?$ /system/index.php?modul=customer&method=customer_main
RewriteRule ^customer-lose-password?$ /system/index.php?modul=customer&method=lose_password
RewriteRule ^customer-logout?$ /system/index.php?modul=customer&method=customer_logout
# Etrade modul rewirte here
RewriteRule ^shopping-cart?$ /system/index.php?modul=etrade&method=shopping_cart
RewriteRule ^cart-remove-product/([a-zA-Z0-9]+)?$ /system/index.php?modul=etrade&method=remove_product_from_shopping_cart&cartid=$1
RewriteRule ^shopping-cart-customer?$ /system/index.php?modul=etrade&method=shopping_cart_customer
RewriteRule ^shopping-cart-done?$ /system/index.php?modul=etrade&method=shopping_cart_done
RewriteRule ^cat([0-9,]+)/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=etrade&method=category_product_list&id=$1&title=$2
RewriteRule ^cat([0-9,]+)/([a-zA-Z0-9\-_]+)/sort-([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=etrade&method=category_product_list&id=$1&title=$2&sort=$3
RewriteRule ^product([0-9]+)/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=etrade&method=product_view&id=$1&title=$2
RewriteRule ^product_search?$ /system/index.php?modul=etrade&method=search_product
# Gateway payment
RewriteRule ^gateway/status/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=gateway&method=status&customer_guid=$1
RewriteRule ^gateway/callback/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=gateway&method=callback&customer_guid=$1
# Actions
RewriteRule ^actions/([a-zA-Z0-9\-_]+)/([a-zA-Z0-9\-_]+)?$ /system/actions.php?modul=$1&method=$2
# Defualt lang
RewriteRule ^([a-zA-Z0-9\-_]+)/([a-zA-Z0-9\-_]+)/t-([0-9]+)-([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=$1&method=$2&id=$3tag=$4
RewriteRule ^([a-zA-Z0-9\-_]+)/t-([0-9]+)-([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=$1&id=$2tag=$3
RewriteRule ^bl([0-9]+)-([a-zA-Z0-9\-_]+)?$ /system/blog_view.php?blog_id=$1
RewriteRule ^gl([0-9]+)-([a-zA-Z0-9\-_]+)?$ /system/gallery_view.php?blog_id=$1
RewriteRule ^([a-zA-Z0-9\-_]+)/([a-zA-Z0-9\-_]+)?$ /system/index.php?modul=$1&method=$2
RewriteRule ^pre\-([a-zA-Z0-9\-_]+)?$ /system/cms.php?tag=$1&preview=true
RewriteRule ^([a-zA-Z0-9\-_]+)?$ /system/cms.php?tag=$1
# Test .htaccess stuff.
# RewriteCond $1 !^(index\.php|robots\.txt|images|css|js)
# RewriteCond %{REQUEST_FILENAME} !-f
# RewriteCond %{REQUEST_FILENAME} !-d
# RewriteRule ^(.*)/$ index.php [L]
Je décommenté les 5 dernières lignes parce que je ne sais pas vraiment comment je peux obtenir ce problème loin par exemple gfx, style et plus encore. Je ne veux pas que l'utilisateur sache que l'URL longue de gfx est theme/domain.dk/gfx/images.png
; ils ont besoin de le voir comme gfx/images.png
@contagious Les fautes d'orthographe sont dans le code aussi; Je me sens plutôt mal pour celui qui maintient cette prochaine –