PWA (Progressive Web App) er navnet på en W3C standard der gør en hjemmeside endnu mere mobilvenlig og giver brugeren en følelse af at benytte en “rigtig” app.: Offline caching ved hjælp af service workers, dvs. din web app om nødvendigt også kan fungere uden en internetforbindelse. Et manifest der definerer splash screen, ikoner, navn […]
Angular 6 http: Kommunikation med api
Opret en service Opret en ny service:
1 |
$ ng g s _service/ApiCom |
Jeg vælger at kalder den ApiCom (Api Communication), men det er helt op til dig at vælge et navn. Derudover placerer jeg alle mine services under ~/mitProjekt/src/app/_service. Dette er den nye service og jeg har derudover importeret Angular’s indbyggede http klient og føjet en ny instans til […]
Angular 6 navigering: Responsive menu – en sidebar
1 |
$ npm install --save ng-sidebar |
I app.module.ts
1 |
import { SidebarModule } from 'ng-sidebar'; |
… og i imports sektionen af samme fil:
1 2 3 4 5 |
imports: [ BrowserModule, ... SidebarModule.forRoot() ] |
I dokumentationen er brugen af modulet tydeligt forklaret, men som ny bruger af Angular 6, havde jeg lidt udfordringer med at finde ud af, hvordan man åbner og lukker det uden for det komponent hvor det er tilføjet. Jeg løste det ved […]
Angular i18n: Oversættelse til flere sprog
[EDIT: 2020-01-31] Vejledningen her fungerer, iht min erfaring for Angular 6, 7 og 8. Oversættelse i Angular er kompliceret ved første øjekast, men efterhånden som man dykker ned i tågen af information, viser sig en ganske fornuftig arbejdsgang der i stor udstrækning forsimpler opgaven i forhold til tidligere tiders metoder. En af de helt store […]
Igang med Angular 6 på Linux
Informationen i dette indlæg kan være forældet da det omhandler Angular 6. I skrivende stund er Angular 13 på trapperne. Det fede Angular er at det er så ufattelig nemt at komme igang. Nedenstående er mine noter fra denne Angular 6 tutorial som jeg varmt kan anbefale.: Opret projekt Først skal vi have fat i […]
Nedbringe størrelsen af fedora-root
Ved en opdatering i dag, fik jeg en advarsel om at dev/mapper/fedora-root er næsten fuld. En df -kh afslørede da også at den var på 96%. Så jeg gik på jagt med du -ksh * og fandt folderen /var/cache/PackageKit på 30GB. Her ligger tilsyneladende en masse pakker fra den nuværende og tidligere installationer. Så spørgsmålet er så, […]
Flytte subversion repository til ny server
Flyt repository Først skal du lave et dump af det repository du vil flytte:
1 |
svnadmin dump /sti/til/repository > mit_repository.svn_dump |
… og overføre det til den nye server:
1 |
scp mit_repository.svn_dump mig@nyserver.com: |
På den nye server opretter du et nyt repository:
1 |
svnadmin create /sti/til/nyt/repository |
Konfigurer Apache … og herefter konfigureres Apache. Jeg inkluderer desuden SSL og adgangskodebeskyttelse.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
<VirtualHost *:443> DocumentRoot /sti/til/nyt/repository ServerName svn.nyserver.com ErrorLog "|/usr/bin/rotatelogs -l /var/log/subversion/svn-error.%Y.%m.%d 86400" CustomLog /var/log/subversion/svn-access_log "%t %u %{SVN-ACTION}e" env=SVN-ACTION <Location "/"> DAV svn SVNPath /sti/til/nyt/repository #Authenticated users only Require valid-user # authenticating them valid ones AuthType Basic AuthName "Subversion Repository" AuthUserFile /sti/til/passwd/.htpasswd-svn order deny,allow deny from all satisfy any </Location> SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCACertificateFile /etc/ssl/local_certs/2018/intermediate.crt SSLCertificateFile /etc/ssl/local_certs/2018/public.crt SSLCertificateKeyFile /etc/ssl/local_certs/2018/private.key <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 <Directory /var/www/subversion> Options -Indexes </Directory> </VirtualHost> |
Efter genstart af Apache fik jeg denne […]
MariaDB: Udføre CHANGE MASTER TO på den forkerte server
Det er farligt at have terminalvinduer åbne samtidig for både master og slave databaserne. Man kan hurtigt komme til at udføre kommandoer i det forkerte vindue. Det skete for mig i dag. Jeg udførte både en START SLAVE og CHANGE MASTER TO… på masteren. Ups! Det er let nok bare at stoppe slaven igen, men […]
ejabberd 16.01 på Ubuntu 16.04
1 |
# apt-get install ejabberd |
Opret en database til ejabberd:
1 |
mysql> CREATE DATABASE ejabberd; |
Indlæs databaselayout:
1 2 |
# cd /usr/lib/x86_64-linux-gnu/ejabberd-16.01/priv/sql/ # mysql -u root -p ejabberd < lite.sql |
(Note til mig i fremtiden: Fra version 16.03 ligger databaselayoutet i INSTALLDIR_OR_PREFIX/share/doc/ejabberd) Peg dit chatdomæne hen på den server hvor ejabberd er installeret og konfigurer:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
## ## SSL Virtual Host Context ## ### # chat.domain1.com ### <VirtualHost *:443> ServerName chat.domain1.com #Path to client app for chat users DocumentRoot /path/to/vhosts/prod.domain1.com #Alias for data directory (not ejabberd related) Alias /data /path/to/www/data/dk.domain1.com #Apache log files ErrorLog "|/usr/bin/rotatelogs -l /path/to/apache2-vhosts/chat3.domain1.com/error.%Y.%m.%d 86400" CustomLog "|/usr/bin/rotatelogs -l /path/to/apache2-vhosts/chat.domain1.com/access.%Y.%m.%d 86400" combined #Various php settings (not ejabberd related) php_value session.save_path /path/to/data/chat.domain1.com/sessions php_flag log_errors On php_flag display_errors Off php_value error_log /path/to/apache2-vhosts/chat.domain1.com/php_error.log #Proxy to point connections from port 80 to 8088 where ejabberd is running ProxyRequests Off ProxyPass /http-bind/ http://127.0.0.1:8088/http-bind/ ProxyPassReverse /http-bind/ http://127.0.0.1:8088/http-bind/ ProxyPass /admin/ http://127.0.0.1:8088/admin/ ProxyPassReverse /admin/ http://127.0.0.1:8088/admin/ AddDefaultCharset UTF-8 #SSL configuration SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCACertificateFile /path/to/local_certs/2018-domain1.com/intermediate.crt SSLCertificateFile /path/to/local_certs/2018-domain1.com/public.crt SSLCertificateKeyFile /path/to/local_certs/2018-domain1.com/private.key BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 #Disable indexes for document root <Directory /path/to/vhosts/prod.domain1.com> Options -Indexes </Directory> </VirtualHost> |
Konfigurer ejabberd i /etc/ejabberd/ejabberd.yml … her er de værdier jeg har ændret:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
hosts: - "localhost" - "jabber.domain1.com" - "chat.domain1.com" - "test-chat.domain1.com" listen: - port: 8088 ip: "127.0.0.1" module: ejabberd_http web_admin: true http_bind: true http_poll: true auth_method: odbc auth_password_format: plain odbc_type: mysql odbc_server: "10.0.0.186" odbc_database: "ejabberd_prod" odbc_username: "ejabberd_prod" odbc_password: "secretpass" |
Nu kan vi registrere en bruger […]
MariaDB går ned og kan ikke startes
Vores MariaDB database gik pludselig hårdt i gulvet og nægtede at starte igen:
1 2 |
# systemctl start mysql Job for mariadb.service failed because a fatal signal was delivered causing the control process to dump core. See "systemctl status mariadb.service" and "journalctl -xe" for details. |
Så jeg begyndte at læse logfiler og Google. Da der var tale om en slave, forberedte jeg mig på at lave mysqldump fra masteren og sætte slaven op forfra… Men så fandt jeg dette tip… Sæt innodb_force_recovery i my.cnf. Start med […]