Я использовал простое правило перезаписи в моем файле .htaccess, чтобы сделать мой URL красивым.Когда-то это было так:
http://somedomain.com/product-details.php?product=MQ==&hash=123456789
Теперь это так:
http://somedomain.com/secure/123456789/MQ==/rings/details/blue-diamond-topaz-ring.php
Это все очень хорошо, но у меня есть много файлов PHP, в которых все ссылки JS и CSS относительно,Из-за вышеупомянутого нового симпатичного URL эти ссылки на JS и CSS теперь имеют 5 или 6 каталогов слишком глубоко.
Мой вопрос: С помощью mod_rewrite можно ли как-то сделатьзапрос на css/style.css
или js/somescript.js
переписать что-то вроде http://www/somedomain.com/css/style.css
например?
Я уже погуглил свое сердце и сделал домашнюю работу, и хотя я могу найти миллион ссылок на переписывание URL, ни одногопохоже, работают одинаково для запроса таких сценариев.Я пробовал это, но безрезультатно:
RewriteRule ^/css/(.*)$ http://localhost/dev/css/$1 [R=302,L]
Я предполагал, что отправит ВСЕ запросы, например /css/somefile.css
на http://localhost/dev/css/somefile.css
Любая помощь или руководство хорошо и действительно ценится.
ОБНОВЛЕНИЕ: Вот часть перезаписи моего файла .htaccess:
RewriteEngine on
Options +FollowSymLinks
RewriteBase /eterniti-mygate/
RewriteRule ^([^-]*)-article-([^-]*)\.php$ /in-the-news.php?action=$1&article=$2 [L]
#rings rewrite rule
RewriteRule ^secure/([^-]*)/([^-]*)/rings/details/([^_]*)\.php$ ring-details.php?product=$2&hash=$1 [L]
RewriteRule ^css/(.*)$ http://localhost/eterniti-mygate/css/$1 [R=302,L]
ОБНОВЛЕНИЕ: Вот вывод файла журнала для перезаписей
Пожалуйста, смотрите мой файл журнала на https://docs.google.com/leaf?id=0B-NRfZvE6xi7MmI0N2ZjNzEtYWZlYy00NjJiLWJhMjQtYzAyYzY4ZWIxN2U0&hl=en_GB
Похоже, что он не переписывает запрос из базы, а скорее из виртуального каталога (например, / secure / ring / details /).Я установил для rewriteBase / eterniti-mygate /, которая является папкой в корневом каталоге вашего сервера wamp.