htaccess переписать, чтобы включить #!
Вызываю всех .гуру htaccess. Мне нужна твоя помощь!
Я пытаюсь заставить перезапись включить #! в URL-адресах.
Так что в основном мне нужно. http://example.com/biography
Быть переписанным на http://example.com/#! / биография
Если это будет иметь какое-либо значение, мои правила перезаписи до сих пор являются
RewriteEngine On RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] RewriteCond $1 !^(images|system|files|themes|static|favicon.ico|robots.txt|index.php) [NC] RewriteRule ^(.*)$ /index.php/$1 [L]
Я отстой в этом деле, так что любая помощь будет очень признательна.
Дополнительно...
Я провожу этот тест, делая то, что мне нужно. сделайте в этом тестере htaccess. http://htaccess.madewithlove.be/ но он не будет работать, когда я попробую его на своем сайте...
RewriteCond %{REQUEST_URI} !^/#! RewriteRule ^(.*)$ /#!/$1 [L]
Нет идей, почему это не сработает?
Спасибо, Марк.
1 ответ:
Имейте свое .htaccess вот так:
Options +FollowSymlinks -MultiViews RewriteEngine on RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] RewriteRule ^(biography)/?$ /#!/$1 [R,L,NE,NC] RewriteCond $1 !^(images|system|files|themes|static|favicon\.ico|robots\.txt|index\.php) [NC] RewriteRule ^(.*)$ /index.php/$1 [L]
Помните, что вы не можете иметь состояние, чтобы проверить
/#!
в .htaccess, потому что эта часть обрабатывается только в браузерах и не отправляется на веб-сервер.