Kategorie: Webentwicklung
Bei einer Website stießen wir kürzlich auf eine Warnung von Chrome (v 41), wie sie rechts zu sehen ist. Schnell war abgeklärt, dass keine „veraltete Kryptographie“ im Einsatz ist. Also nahmen wir den Teil „Diese Seite enthält jedoch andere, nicht sichere Ressourcen.“ unter die Lupe. Per Durchsicht im HTML-Quellcode konnten wir keine Resourcen-Einbindung mit „http://“-Quellen entdecken. Zur Sicherheit wurden sämtliche Javascripte und CSS-Dateien herausgenommen. Chrome meldete weiterhin seine Bedenken. Aus Clientsicht ließ sich nichts mehr erkennen. Wir guckten uns die Sache daher serverseitig an: welche Resourcen werden denn dort angefordert (nachdem wir externe Quellen ausschließen konnten)? Doch im access-Log tauchten...
Im Moment wird immer häufiger der Wunsch nach anderen Schriftarten auf der Website, die nicht unter die Standardschriften fallen geäußert. Eine Recherche im Netz ergab zwei sehr interessante Artikel zum Thema Schriftlizenzen und die Nutzung der Fonts im Web sowie im Print Bereich. Hier die beiden Links zu den Artikeln: Mythos Schriftlizenzen – Alles, was man wissen muss Artikelserie zu Schriftlizenzen: Teil 2. Wie definiert man Fontnutzung? Herzlichen Dank an den Autor!
Wir haben häufiger das Problem, dass eine Einbindung der Google Maps Karte zu klein für die Sprechblase wird und es besser wäre sie auszublenden. Auf der Suche nach einer Lösung wurden wir auf dem Blog kulturbanause fündig und möchten den Tipp gleich weiter verbreiten 🙂 Es muss lediglich das src-Attribut am Ende des iframes erweitert werden: &iwloc=near Eine ausführliche Beschreibung findet ihr bei kulturbanause.
Der Magento Checkout braucht manchmal Ewigkeiten, um den Checkout abzuschliessen. So ist z.B. ein Warenkorb mit 80 Positionen und ca. 400 Artikeln nach 6 Minuten in den PHP Timeout gelaufen. Der Grund hierfür liegt in den Observern, die beim Abschluss einer Bestellung aufgerufen werden. Hierbei handelt es sich um den Observer sales_order_item_save_after der Module Downloadable/RSS Diese Observer wurden auch aufgerufen, obwohl die Module im Magento backend in der Systemkonfiguration deaktiviert wurden. Um die Observer zu deaktivieren, müssen folgende Codezeilen auskommentiert werden: app/code/core/Mage/Downloadable/etc/config.xml downloadable/observer saveDownloadableOrderItem Hinweis: In Magento 1.6.2.0 heisst der Downloadable Observer sales_order_item_save_commit_after app/code/core/Mage/Rss/etc/config.xml rss/observer salesOrderItemSaveAfterNotifyStock rss/observer salesOrderItemSaveAfterOrderNew Danke hierfür...
Wer – wie ich und viele andere – auf Eclipse als Entwicklungs-IDE setzt, wird früher oder später auch auf die Tücken und kleinen Stolperfallen der Freeware-Lösung stoßen. Eine davon – wenn man Google und verschiedenen Foren glaub darf – ist schon mehrfach aufgetreten, auf die richtige Lösung zu stoßen ist jedoch Glückssache. Es geht darum, über Eclipse weitere Plugins wie bspw. Subversion oder auch die PHP Development-Tools nachzuinstallieren. Gerade bei DualStack-Arbeitsrechnern – also denen, die sowohl via IPv4 als auch IPv6 angebunden sind – funktioniert das nicht ohne weiteres. Eclipse wird den Dienst mit der Fehlermeldung Unable to read repository...
Oft wurstelt man bei der Entwicklung mit UNIX-Timestamps für Zeitangaben herum. Das ist kein Hexenwerk, aber direkt das Gelbe vom Ei ist es auch nicht. Speziell zur Implementierung von Zeit- und Datums-Filtern benötigt dieser Lösungsansatz eine Menge Logik, die in PHP gegossen werden muss (Schaltjahre, Schaltsekunden, …). Das Herumrechnen damit ist mühsam und sorgt oft für Knöten im Hirn. Dies kann man wesentlich einfacher haben. mySQL kommt mit einer großen Vielfalt von Datums- und Zeitfunktionen daher, derer man sich wunderbar bedienen kann. Wenn man sich zum Beispiel die Funktion TIMESTAMPADD() ansieht, wird man schnell merken, dass diese Funktionen das Entwicklerleben...
Nach verschiedenen größeren Projekten hat sich langsam ein Workflow herauskristallisiert, mit dem wir das normale Szenario eines TYPO3-Projektes abbilden können. Zur Versionierung kommt hierzu Subversion mit dem „branch always“-Ansatz zum Einsatz, und es gibt für die Freigabe- und für die Live-Version getrennte Serverinstanzen. Die Erklärung hierzu basiert weitgehend auf dem Beitrag SVN trunk, branches and tags von Jean-Michel, wurde aber übersetzt und um den Freigabe-Workflow ergänzt.
Den Domainnamen in die .htaccess zu schreiben finde ich etwas ungluecklich, vor allem da es nicht notwendig ist: <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L] </IfModule>
Dieser Artikel ist sehr alt. TYPO3 wurde weiterentwickelt, wodurch die Inhalte des Artikels möglicherweise nicht mehr zur aktuellen TYPO3-Version passen. Der Beitrag Optimierte .htaccess für TYPO3 ist neuer und befassts ich mit dem gleichen Thema. Die .htaccess Datei welche standardmäßig in einer TYPO3 Installation (meist als _htaccess) mitgeliefert wird ist fuer Dokumentationszwecke besser geeignet als zum produktiven Einsatz. .htaccess eine .htaccess wird mit jedem File-Hit geparst, besser wäre es natürlich die Einstellung direkt in der Apache Konfiguration der VirtualHosts vorzunehmen. Das scheitert aber vermutlich meist an entsprechenden Rechten. Dadurch dass es geparst werden muss, sollte man die Datei klein halten....