Я пытаюсь удалить хэш-тег с моего сайта. Я достиг этого, следуя коду.
$locationProvider.html5Mode(true);
Также добавлен базовый URL-адрес в индексном файле.
Моя проблема в том, что я нахожусь в состоянии contct-us после перезагрузки всей страницы. Я перенаправляюсь в исходное состояние, которое определяется как иначе.
Используемая конфигурация –
server -Appache database – mysql
Я добавил следующий код в .htaccess для правила перезаписи –
RewriteEngine On php_value post_max_size 120M php_value upload_max_filesize 120M php_value max_execution_time 90 RewriteCond %{HTTP_HOST} ^54\.201\.153\.244$ [NC,OR] RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L] RewriteCond %{HTTP_HOST} ^adkarlo.com$ [NC] RewriteRule ^(.*)$ https://www.adkarlo.com/$1 [R=301,L] #RewriteBase /html/ ErrorDocument 404 /404.php RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^ - [L] RewriteRule ^(.*)$ index.php [L]
Ожидаемый результат. После перезагрузки из состояния свяжитесь с нами на любой странице, на которой я хочу перейти на ту же страницу.
Чтобы поддерживать перезагрузку URL-адресов маршрута в режиме HTML5, вам необходимо реализовать переписывание URL-адресов на стороне сервера, чтобы направлять нефайловые запросы (то есть запросы, которые явно не указаны для существующего файла) в ваш индексный файл, обычно index.html
,
Из документации
Использование этого режима требует перезаписи URL-адресов на стороне сервера, в основном вы должны переписать все свои ссылки на точку входа вашего приложения (например, index.html).
Правило перезаписи не должно содержать #
в целевом URL. Вместо этого используйте
RewriteEngine on # Don't rewrite files RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^ - [L] # Rewrite everything else to index.html to allow html5 state links RewriteRule ^ index.php [L]
Кроме того, нет необходимости устанавливать RewriteBase
.