PHP Error Log bei PHP Version 7 und höher

Wer kenn nicht das Problem. Die PHP Version wurde auf 7 oder höher angehoben und nun werden die PHP Fehler nicht mehr im Frontend angezeigt.

Das Verhalten ist ja aus dem Sicherheitsaspekt vollkommen korrekt.
Aber ab und zu debuggt man ja schon ganz gerne und dann ist es schön, mal auf die Schnelle das Error Log zu sehen.

Die Lösung ist relativ einfach:

eine .htaccess Datei im Verzeichnis anlegen:

php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_value error_log /relativer/pfad/zum/ordner/php_errors.log

Das wars. Jetzt kann man per FTP oder Http auf die Fehler zugreifen und fleißig debuggen.

Aus Sicherheitsgründen sollte das Anzeigen der Fehler aber nach erfolgtem Debuggin wieder ausgeschaltet werden oder zumindest die Datei per htaccess Zugriffschutz, gesichert werden.

Permanente Umleitung auf https://www per htaccess (klappt auch bei Strato)

Prefered https://www.website.com


RewriteEngine on
# If your CMSMS installation is in a subdirectory of your domain, you need to specify the relative path (from the root of the domain) here.
# In example: RewriteBase /[subdirectory name]
RewriteBase /

# +++++ ADD THIS - START +++++
# Link to http(s)://www.website.com then redirect to https://website.com
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

# Force URLs have https instead of http
# RewriteCond %{HTTPS} off
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# ++++++ ADD THIS - END +++++

Whitespace durch includierte PHP Dateien vermeiden

Darauf wäre ich nicht gekommen. Manchmal ist es wirklich einfacher die PHP Doku zu lesen, statt stundenlang nach der Fehlerursache zu suchen.

Hinweis:

Der schließende Tag eines PHP-Blocks am Ende einer Datei ist optional, und in einigen Fällen ist das Weglassen hilfreich, wenn Sie include oder require verwenden, so dass ungewollte Whitespaces nicht am Ende einer Datei auftreten und Sie noch im Stande sind, später weitere Header an die Response hinzuzufügen. Es ist ebenfalls praktisch, wenn Sie Output Buffering verwenden und keine ungewollten Whitespaces am Ende eines durch die eingebundenen Dateien erzeugten Parts sehen wollen.

Einfach

?>

am Ende der inkludierten PHP Datei weg lassen und schon klappt es auch mit dem unerwünschten Whitespace

Dies ist zum Beispiel sinnvoll wenn Preislisten als CSV Datei erstellt werden sollen

CMSms Minify richtig und einfach nutzen

Das Minify Modul für CMS made Simple muss installiert sein.

Nach diesem Muster könnt Ihr Testweise eine URL bilden:

https://domain.tld/unterverzeichnis_falls_vorhanden/modules/Minify/min/builder/

Eine Schleife lädt alle Javascriptdateien die sich im Ordner „uploads/ORDNERNAME/js/“ befinden  in die Minify URL


{* lädt alle js scripts aus dem template ordner *}
{assign var='js_template_scripts_array' value="uploads/ORDNERNAME/js/*.js"|glob}
< s c r i p t type="text/javascript" src="/min/?f={foreach from=$js_template_scripts_array item='scriptname' name=oneitem}cms/{$scriptname}{if $smarty.foreach.oneitem.last}{else},{/if}{/foreach}">



Bitte beim Copy/Paste darauf achten, das ich die Script Tags mit Leerzeichen aufgefüllt habe. Sonst wird der CdeSchnipsel nicht vollständig hier angezeigt.

That´s it

Installierte Programme finden und mittels Microsoft Installationsprogramm entfernen

cmd.exe aufrufen

wmic product list brief > installed.txt
erstellt eine Textdatei in der die installierten Programmversionen enthalten sind

Mittels
msiexec /x {ProductCode}
zum Beispiel: msiexec /x {4CCC9EC0-0DED-47A1-A144-248995387B8D} 

deinstalliert das Programm mittels Microsoft Installer.

Diese Lösung ist perfekt wenn die normale Deinstallationsroutine nicht funktioniert.