Angular - publikowanie projektu w sieci

Autor podstrony: Krzysztof Zajączkowski

Stronę tą wyświetlono już: 1391 razy

W celu opublikowania swojego dzieła w sieci konieczne jest posiadanie serwera (chociażby lokalnego) oraz zbudowanie aplikacji w sposób następujący:

ng build --prod --base-href=/

Dzięki temu twój projekt zostanie skompilowany do postaci, która po wrzuceniu na serwer będzie działała w sposób zoptymalizowany. Optymalizacja polega na tym, że Angular łączy wszystkie style css w jeden plik oraz minifikuje kod javascript umniejszając rozmiary plików zawierających kod. Dzięki takiemu podejściu znacznie spadnie zużycie transferu oraz czas ładowania strony.

To jednak nie wszystko, albowiem konieczne jest jeszcze wprowadzenie pliku .htaccess, w którym to należy umieścić następujący kod:

<IfModule mod_rewrite.c> RewriteEngine On # -- REDIRECTION to https (optional): # If you need this, uncomment the next two commands # RewriteCond %{HTTPS} !on # RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} # -- RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR] RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^(.*) index.html [NC,L] </IfModule> <FilesMatch ".(html|htm|js|json|css)$"> <IfModule mod_headers.c> FileETag None Header unset ETag Header unset Pragma Header unset Cache-Control Header unset Last-Modified Header set Pragma "no-cache" Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate" Header set Expires "Mon, 10 Apr 1972 00:00:00 GMT" </IfModule> </FilesMatch>

Powyższy kod znaleziony został tutaj i umożliwia on poprawne przeładowanie strony aplikacji bez konieczności używania znacznika # w adresie przeglądarki.