2015-07-20 6 views
1

я следующий код, написанный в моем .htaccess документеработы с Htaccess - страница не загружается должным образом

RewriteEngine On 


# If you need to use the `RewriteBase` directive, it should be the 
# absolute physical path to the directory that contains this htaccess file. 
# 
# RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 


RewriteRule ^category/([a-z]+)/?$ searchPage.php?crs_category=$1 

RewriteRule^index.php [QSA,L] 

проблема я думаю, что происходит в следующей строке:

RewriteRule ^category/([a-z]+)/?$ searchPage.php?crs_category=$1 

По сути, я хочу, когда пользовательский тип searchPage.php?crs_category=business перепишите URL-адрес на category/business или category/business/ или category/BUSinesS/ или category/BUsineSS

Как она стоит на следующих проблем с этой линией выглядят следующим образом:

  1. в CSS/JS кажется загрузить
  2. он работает только тогда, когда я печатаю категорию/бизнес/если я типа searchPage.php ? crs_category = бизнес не перенаправлять или переписать на чистый URL
+0

переписывают г ule не сможет это сделать для вас. используйте javascript, посмотрите здесь http://stackoverflow.com/questions/3338642/updating-address-bar-with-new-url-without-hash-or-reloading-the-page – Jigar

ответ

1

Попробуйте это:

RewriteEngine On 
RewriteBase/
RewriteCond %{THE_REQUEST} /searchPage.php\?crs_category=([^\s]+) [NC] 
RewriteRule^category/%1? [NE,NC,R,L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^category/([^/]+)/?$ searchPage.php?crs_category=$1 [QSA,L,NC] 
+0

Благодарю вас за ответ и хотя две вещи: на локальном хосте переписывание, похоже, переписывает его как таковое http: // localhost/opt/lampp/htdocs/website/category/Web% 2520development, где по умолчанию это был localhost/website/и я набираю localhost/веб-сайт/searchPage.php? category = business Вторая проблема по какой-то причине relvant css/js-файлы не загружаются при выполнении перезаписи URL-адресов – John

+0

Раскомментируйте или добавьте RewriteBase/line, и для решения js-й проблемы css вы можете измените базу URI в заголовке ваших страниц (в промежутке между тегами '', добавьте '' – starkeen

Смежные вопросы