jump to navigation

Bring Site Offline 1 Φεβρουαρίου 2008

Posted by Νικόλας in .NET, Web Development, Windows.
Tags: , , ,
add a comment

Έχετε δεί σε ορισμένα sites, ένα μήνυμα του στύλ «This site is offline for maintenance. Please come back soon»;

Έχετε για παράδειγμα ένα .NET 2.0 site το οποίο θέλετε να αναβαθμίσετε. Για παράδειγμα, έχετε ένα DotNetNuke site το οποίο θέλετε να αναβαθμίσετε στη τελευταία έκδοση. Πώς θα γίνει όλο αυτό, χωρίς να έχεις τους χρήστες για το διάστημα που γίνεται η αναβάθμιση, να βλέπουν διάφορα error pages;

Η λύση είναι απλή. Τοποθετήστε στο Application Root Folder ένα αρχείο html με όνομα app_offline.html (ΠΡΟΣΟΧΗ, πρέπει να είναι ακριβώς αυτό το όνομα του αρχείου). Αυτό το αρχείο διαμορφώστε το όπως θέλετε. Εφόσων υπάρχει αυτό το αρχείο στο Application Root Folder, τότε ο IIS «ρίχνει» την εφαρμογή και εμφανίζει το περιεχόμενο του αρχείου. Για να φέρετε την εφαρμογή back online, απλά διαγράψτε ή μετονομάστε το αρχείο!

Η συγκεκριμένη διαδικασία δεν ισχύει μόνο για το DotNetNuke, αλλά για οποιαδήποτε ASP.NET 2.0 εφαρμογή.

Αυτό είναι όλο!

Χρήσιμα links

.NET Blog Engine … at last! 1 Αυγούστου 2007

Posted by Νικόλας in .NET, Web Development.
Tags: , ,
4 Σχόλια

blogengine.net Επιτέλους!!! Μία σοβαρή blog engine σε .NET! Δεν λέω, καλό το Blogs module του DNN, καλός και ο Community Server, αλλά το μεν πρώτο, δεν είναι τόσο «ευέλικτο» όσο χρειάζεται (τόσο σχεδιαστικά όσο και προγραμματιστικά) το μεν δεύτερο δεν «έρχεται» σε lite έκδοση blog only (προτιμούσα το .Text), αλλά είσαι αναγκασμένος να πάρεις όλο το πακέτο (Forums, Blogs, Galleries, κλπ) και επιπλέον (τώρα το είδα ΚΑΙ αυτό), δεν παρέχεται πλέον δωρεάν (βρε τους κερατάδες!)

BlogEngine.NET is an open source .NET blogging project that was born out of desire for a better blog platform. A blog platform with less complexity, easy customization, and one that takes advantage of the latest .NET features.

BlogEngine.NET was designed using the current .NET framework and focused on simplicity, ease of extendibility, and innovative features. With BlogEngine.NET, we hope to create the natural blog of choice for all .NET developers world wide.

σημ. πρός το παρόν παραμένω στο wordpress, αλλά επίκειται η μετοίκιση σε private server και blogengine.net από Σεπτέμβριο

.NET Resource Editor 1 Αυγούστου 2007

Posted by Νικόλας in .NET, Web Development.
Tags: , , ,
add a comment

Ξεκίνησα να μεταφράζω ένα free .ΝΕΤ control στα Ελληνικά. Ο developer του control μου έστειλε το αρχείο .resx και ξεκίνησα τη μετάφραση.

Όχι και τόσο εύκολη διαδικασία. Ευτυχώς σήμερα ανακάλυψα το ResEx του Δημήτρη Παπαδημητρίου.

Κάνει τη δουλειά, είναι Ελληνικό, είναι .ΝΕΤ και είναι δωρεάν … κατεβάστε το!

RSS in every page 1 Αυγούστου 2007

Posted by Νικόλας in Web Development.
Tags:
add a comment

Ανακάλυψα σήμερα αυτό: http://www.feedity.com/

To Feedity είναι ένα online application το οποίο δημιουργεί RSS για ιστοσελίδες που δεν παρέχουν RSS.

Δυστυχώς δεν δουλεύει για όλα τα sites, αλλά αξίζει πραγματικά.

Η υπηρεσία είναι δωρεάν και για κάποια sites που αρνούνται πεισματικά να κάνουν χρήση των RSS είναι το ιδανικό «εργαλείο».

Σας το συστήνω ανεπιφύλακτα!

Το σωστό encoding 15 Μαΐου 2006

Posted by Νικόλας in .NET, Web Development, Windows.
Tags: , , ,
7 Σχόλια

Αντιμετώπισα πρόσφατα ένα κλασσικό πρόβλημα. Μετέφερα μία βάση δεδομένων και μία web application από έναν server σε κάποιον άλλο. Για την ακρίβεια μετέφερα μία MySQL/PHP εφαρμογή από έναν Linux hosting provider σε έναν windows hosting provider.

Τί έγινε, μόλις τέλειωσα το Upload. Ο χαμός! Εκτός από τα χρώματα, όλα τα άλλα εμφανιζόντουσαν λάθος. Από PHP και MySQL δεν μπορώ να πω ότι κατέχω και ιδιαιτέρως (εντάξει δεν ξέρω, αλλά δεν το μαρτυράω), αλλά δεν άργησα να καταλάβω τί φταίει (και όχι δεν φταίει η αλλαγή από Linux σε Windows). Η νέα MySQL χρησιμοποιεί ως default encoding το latin1_swedish_ci (όπου ci Case Insensitive). Τα δεδομένα όμως μέσα στη βάση δεδομένων είχαν αποθηκευθεί ως greek (ISO 8859-7). Τέλος τα php χρησιμοποιούσαν ως template HTML αρχεία με δηλωμένο HTML encoding το ISO 8859-7 ωστόσο τα Connection Strings «τραβούσαν» τα δεδομένα από τη βάση με UTF-8.

Ωραίο μπάχαλο ε;!

Παλαιότερα, είχα ένα παρόμοιο πρόβλημα. Τα encodings μου στο ASPX ήταν σωστά, η βάση μου είχε σωστό Collation, αλλά μόλις τα ανέβασα στον provider, «μεταφράστηκαν» τα πάντα σε Κινέζικα.

Σήμερα, έπεσα πάνω σε ένα ερώτημα στο dotnetzone.gr, σχετικά με τα Ελληνικά και το σωστό encoding. Η φόρμα σωστή, το encoding σωστά δηλωμένο ως ISO 8859-7, αλλά μόνο οι Αγγλικοί χαρακτήρες «έφταναν». Οι Ελληνικοί έχαναν το δρόμο.

Πού θέλω να καταλήξω; Απλά να δώσω μια απλή και συνολική απάντηση σε όλα τα παραπάνω προβλήματα.

Ξεχάστε την εθνική υπερηφάνια, γιατί όσο και να λέμε ότι έχουμε δικό μας, κατά δικό μας προσωπικό εθνικό format, το ISO 8859-7 δεν τη κάνει σωστά τη δουλειά του. Ένα είναι λοιπόν το encoding και το όνομα αυτού Unicode Transformation Format – 8 ή UTF-8.

Σε ότι και αν κάνετε ΠΑΝΤΑ και ΜΟΝΟ αυτό το encoding να χρησιμοποιείται. Στο encoding της βάσης (η MS SQL έχει μία μικρή έλλειψη σε αυτό το θέμα, οπότε δηλώνετε ότι θέλετε στο collation), στο HTML encoding, στην XML, στο ASPX, ακόμα και κατά την αποθήκευση του αρχείου, πάντα να επιλέγετε UTF-8.

Και όλα τα προβλήματα θα χαθούν…

Ορισμένα παραδείγματα για τη δήλωση του σωστού (δηλ. UTF-8) encoding:

MYSQL:

@mysql_query(«SET CHARACTER SET ‘utf8′»)) και (@mysql_query(«SET NAMES ‘utf8′»)

MS SQL (είπαμε η MSSQL έχει μια μικρή έλλειψη, απλά δηλώνουμε multi-byte characters, γιατί χρησιμοποιεί Unicode):

ALTER TABLE Pinakas ALTER COLUMN Kolwna NVARCHAR(20)
και
INSERT INTO Pinakas VALUES(‘non_Unicode_Value’, Ν’Unicode_Value_N_makes_the_difference’).

HTML:

<meta http-equiv=»Content-Type» content=»text/html; charset=utf-8″>

XML:

<?xml version=»1.0″ encoding=»UTF-8″?>

ASP.NET:

<%@ Page Language=»C#» ContentType=»text/html» ResponseEncoding=»utf-8″ %>

WEB.CONFIG:

<?xml version=»1.0″ encoding=»utf-8″ ?>
<configuration>
<system.web>
<globalization requestEncoding=»utf-8″ responseEncoding=»utf-8″ />
</system.web>
</configuration>

Χρήσιμα Links