Πιστοποιητικό SSL Με «A Rating»

Αφού εγκαταστήσουμε πιστοποιητικό SSL από το Let’s Encrypt, ελέγχουμε την ποιότητα του certificate στο site της Qualys.

Αν η τελική βαθμολογία που πάρουμε είναι B εξαιτίας του σφάλματος «The server does not support Forward Secrecy with the reference browsers»  τότε ακολουθούμε τα παρακάτω βήματα για να πάρουμε A rating.

Στο αρχείο /etc/apache2/apache2.conf προσθέτουμε τις εξής γραμμές:

Κάνουμε επανεκκίνηση του server με:

Και κάνουμε ξανά έλεγχο του certificate. Αυτή τη φορά το SSL Labs θα πρέπει να μας δώσει «A rating».

Διαβάστε το υπόλοιπο άρθρο »

Διαγραφή Git Index Μετά Από Αλλαγές Στο .gitignore

Όταν σε ένα git repository κάνουμε αλλαγές στο .gitignore αρχείο, τότε το git «αγνοεί» τις αλλαγές που αφορούν αρχεία τα οποία έχουμε ήδη κάνει ‘git add’ σε κάποιο παλαιότερο commit. Στην περίπτωση αυτή ακολουθούμε τα παρακάτω βήματα.

Απομακρύνουμε όλα τα αρχεία του τρέχοντος directory από το index του git με:

Και μετά τα προσθέτουμε πάλι με:

Με τον τρόπο αυτό, βγάλαμε όλα τα αρχεία από το index του git και στη συνέχεια, όταν κάναμε το ‘add’ το git πλέον ακολούθησε τις οδηγίες του νέου ‘.gitignore’ και αγνόησε τα αρχεία που προηγουμένως είχαμε προσθέσει στο repository.

Webhosting Στη Linode

Για αξιόπιστη φιλοξενία ιστοσελίδας το DevBlog.gr σας προτείνει τη Linode. Η Linode προσφέρει SSD Cloud Hosting με τιμές που ξεκινούν από $5/μήνα για σέρβερ με 1GB RAM, 20 GB SSD Storage, 1 TB Transfer. Αποκτείστε ένα οικονομικό πακέτο φιλοξενίας στην Linode τώρα! 🙂

Μετατροπή Δυναμικού Site Σε Στατικό Με Wget

Ένας τρόπος για να μετατρέψετε ένα δυναμικό site σε στατικό, είναι να «κατεβάσετε» τοπικά ολόκληρο το site με τη βοήθεια της εντολής wget:

Επεξήγηση:

  • ––recursive: κατεβάζει ολόκληρο το site
  • ––no-clobber: δεν κάνει overwrite αρχεία που ήδη έχετε κατεβάσει
  • ––page-requisites: κατεβάζει όλα τα αρχεία που συνθέτουν κάθε σελίδα (εικόνες, CSS, JS κλπ)
  • ––html-extension: αποθηκεύει τα αρχεία ως .html
  • ––wait=3: περιμένει πχ «3» δευτερόλεπτα ανάμεσα σε κάθε αίτημα για κατέβασμα αρχείου
  • ––limit-rate: βάζει όριο στον ρυθμό κατεβάσματος αρχείων. π.χ. 60K είναι 60 kilobytes/second που ισούται με 480Kbps
  • ––convert-links: μετατρέπει τα links ώστε να δουλεύει το site τοπικά (offline)
  • ––restrict-file-names=windows: μετέτρεψε τα αρχεία ώστε να λειτουργούν σωστά και σε Windows
  • ––domains example.com: δίνει εντολή να μην κατεβούν αρχεία που δεν ανήκουν στο domain example.com

Διαβάστε το υπόλοιπο άρθρο »

Διόρθωση Σειράς Ταξινόμησης Directories Σε Ubuntu

Μια κοινή πρακτική είναι να χρησιμοποιούμε directories που ξεκινούν με _ (underscore) προκειμένου αυτά να εμφανίζονται πρώτα στη λίστα του Files ή στο terminal. Εντούτοις, σε Ubuntu, τα directories που ξεκινούν με underscore δεν εμφανίζονται πρώτα στη λίστα με τα αρχεία/φάκελους.

Σύμφωνα με μια σελίδα βοήθειας του Ubuntu υπεύθυνη για το «πρόβλημα» αυτό είναι η ρύθμιση LC_COLLATE.  Αν πληκτρολογήσουμε locale στο terminal θα επιστρέψει τα εξής:

Βλέπουμε ότι η ρύθμιση LC_COLLATE έχει τιμή «en_GB.UTF-8» ή «en_US.UTF-8» και θα πρέπει να την αλλάξουμε σε C ή POSIX με τον εξής τρόπο:

Μετά κάνουμε logout και όταν κάνουμε πάλι login τα αρχεία και οι φάκελοι θα εμφανίζονται με αυτά που ξεκινούν με _ (underscore) πρώτα στη λίστα.

 

Βοήθημα Για Κατασκευή Responsive Ιστοσελίδας

Όταν κατασκευάζουμε μια ιστοσελίδα είναι απαραίτητο να φροντίζουμε ώστε αυτή να είναι ‘responsive’, δηλαδή να έχει σωστή εμφάνιση σε όλες τις συσκευές (κινητό τηλέφωνο, tablet και υπολογιστή).  Ένα αναγκαίο «κακό» κατά τη διάρκεια κατασκευής responsive ιστοσελίδας είναι ότι πρέπει συνεχώς να αλλάζουμε το μέγεθος του browser προκειμένου να βλέπουμε πως αποκρίνεται η ιστοσελίδα στα διάφορα πλάτη του browser.

Δημιούργησα λοιπόν ένα μικρό οπτικό βοήθημα – εργαλείο που ανά πάσα στιγμή δείχνει στο κάτω αριστερό μέρος της ιστοσελίδας, σε ποιο media query ‘βρισκόμαστε’ και έχει την εξής εμφάνιση:

Για να το χρησιμοποιήσετε κι εσείς, προσθέστε τον παρακάτω κώδικα προς το τέλος της ‘index/home’ σελίδας σας (π.χ. λίγο πριν το κλείσιμο του <body>):

Διαβάστε το υπόλοιπο άρθρο »

Ρύθμιση Git Για Να Αγνοεί Αλλαγές Σε Permissions

Όταν αλλάζετε τα permissions αρχείων με chmod τότε το git θα θεωρήσει ότι έχουν γίνει αλλαγές στα αρχεία αυτά και το git diff θα δείχνει ότι αυτά τα αρχεία (των οποίων τον κώδικα δεν έχετε αλλάξει) έχουν αλλαγές.

Αν θέλετε το git να αγνοεί όποιες αλλαγές γίνονται με chmod (αλλαγή permissions), τότε χρησιμοποιήστε το εξής:

Απενεργοποίηση Cache Σε Drupal 8

Όταν δημιουργείτε μια νέα ιστοσελίδα ή εφαρμογή με Drupal 8, μία από τις πιο εκνευριστικές και χρονοβόρες διαδικασίες είναι ότι για κάθε αλλαγή σε κώδικα, θα πρέπει να κάνετε εκκαθάριση της cache.

Για να εξοικονομήσετε χρόνο, κάντε τα εξής:

1. Δημιουργήστε ένα αντίγραφο του settings.php με το όνομα settings.local.php.

2. Στο τέλος του αρχείου `/sites/default/settings.php θα βρείτε τις γραμμές:

Διαγράψτε τα # προκειμένου το Drupal να χρησιμοποιεί τοπικά το αρχείο /sites/default/settings.local.php.

3. Στο αρχείο settings.local.php βρείτε τη γραμμή:

και αφαιρέστε το #. Αν η γραμμή δεν υπάρχει, προσθέστε τη χωρίς το #.

Διαβάστε το υπόλοιπο άρθρο »

Εγκατάσταση Scala Σε Mac Μέσω Terminal

Θα εγκαταστήσουμε τη γλώσσα προγραμματισμού Scala σε Mac χωρίς τη χρήση Homebrew αλλά μέσω terminal.

Πηγαίνουμε στη σελίδα www.scala-lang.org/download κάνουμε κλικ στο «Download» και κατεβάζουμε το τελευταίο binary (2.11.2). Μεταφέρουμε το ζιπαρισμένο αρχείο του binary στο directory /usr/bin και εκεί αποσυμπιέζουμε το αρχείο. Πλέον το full path του directory είναι: /usr/bin/scala-2.11.2

Ανοίγουμε το αρχείο paths με την εντολή:

και προσθέτουμε το /usr/bin/scala-2.11.2/bin στο $PATH variable του shell πληκτρολογώντας τη γραμμή:

Με Ctrl+O κάνουμε overwrite (απαντάμε Yes) και με Ctrl+X βγαίνουμε από την οθόνη του nano editor.

Κάνουμε επανεκκίνηση του terminal και πληκτρολογούμε scala. Τότε θα εμφανιστεί το command prompt της Scala:

Αντιγραφή Δεδομένων Από Μια Βάση Δεδομένων Σε Άλλη

Υπάρχουν περιπτώσεις όπου κατά τη διάρκεια ανάπτυξης κάποιου web project δημιουργούμε ένα αντίγραφο της ενεργής βάσης δεδομένων και το χρησιμοποιούμε για την ανάπτυξη της ιστοσελίδας/εφαρμογής.

Κατά τη διαδικασία ανάπτυξης, τυχαίνει να μεταβληθούν δεδομένα μόνο από ορισμένα tables της βάσης. Όταν έρθει η στιγμή να ενσωματώσουμε τα δεδομένα της development βάσης δεδομένων στην ενεργή database, τότε θα μεταφέρουμε μόνο τα δεδομένα του ή των table που έχουν αλλαγές.

Για το σκοπό αυτό, χρησιμοποιούμε τον παρακάτω κώδικα:

Ο παραπάνω κώδικας κάνει «update» τα δεδομένα στο «table1» της ενεργής βάσης «livedb» με αυτά στο «table2» της «developmentdb» βάσης δεδομένων που χρησιμοποιήθηκαν για την ανάπτυξη του web project. Για το update, στο WHERE clause θέτουμε ότι τα IDs των δύο tables είναι τα ίδια.