Beiträge von Isaac

    in dem Tutorial welches ich nutze und auf php.net kann man oft den Stil wechseln. Ich persönlich mag den Stil nicht, da ich eher aus der Richtung C / Java komme und daher so etwas einfach nicht verstehe und es auch so wie ich es schon habe geht. Ich persönlich finde den Stil unglaublich verwirrend, aber das ist ja jedem selber überlassen.

    Wie kommst du auf $mysqli? Ich habe die Variable nicht und wenn ich sie durch $conn ersetze hagelt es Fehler.

    Edit: Ich habe mir grade den Text noch einmal durchgelesen und gemerkt dass ich etwas aggressiv klinge, das war so nicht beabsichtigt :-/ (Warum kann man die Nase nicht weglassen... :I)

    Dann poste doch mal die Fehler hier, dann können wir dir weiterhelfen. Wenn es zu groß ist, benutze am besten pastebin oder sowas. Ich hab auch nochmal drüber geschaut und ein wenig was adaptiert und geändert. Probiere das mal:

    Ohne genaues Wissen über das DB Schema, können wir dir auch nur teilweise Beispiel-Code geben. Wenn du magst, kannst du mich gerne privat anschreiben wegen genaueren Infos, sollte es immer noch nicht klappen.

    Hallo,

    ich habe folgendes Problem. Ich habe auf meinem WSL2 mittels Composer das laminas/laminas-mvc-skeleton installiert. Zur weiteren Info: Ich greife mittels Win Explorer und Netzwerk-Verknüpfung auf das WSL Dateisystem zu. Als Git Client benutze ich Github Desktop.

    Dabei ist auch der Fall aufgetreten, dass ein paar SymLinks erstellt werden. Jetzt habe ich das Problem, dass ich das nicht in mein Git Repo schieben kann, wegen den Symlinks, dort wird dann ein Fehler geworfen. Nach einigem Googeln und nutzen meines Verstandes, habe ich halt gemerkt, dass es an den Symlinks liegt. Das kann Git nicht verarbeiten anscheinend.

    Hat da wer eine Idee, wie ich das lösen kann? Ich meine auch, dass dieses Phänomen neu ist.

    Vielen Dank, das hat das Problem gelöst.

    Folgendes Problem:

    Ich arbeite unter dem WSL (Debian). Jeden Tag brauche ich dort diverse Dienste, da aber der PC immer wieder abends ausgeschaltet wird und am darauffolgenden morgen gestartet wird, müssen auch sämtliche Dienste neugestartet werden. Das betrifft nginx, php5.6-fpm, php7.2-fpm, php7.3-fpm, php7.4-fpm und mysql.

    Bis dato habe ich jeden morgen in der Shell erstmal "sudo service nginx start" und alle anderen Dienst gestartet. Mit der Zeit ist das irgendwann echt blöd.

    Deswegen die Idee das automatisieren.

    Die Lösung:

    Ein file /opt/startup.sh der Inhalt:

    Code
    sudo service postfix start
    sudo service nginx start
    sudo service php5.6-fpm start
    sudo service php7.2-fpm start
    sudo service php7.3-fpm start
    sudo service php7.4-fpm start
    sudo service mysql start

    In der /etc/sudoers wurde folgendes eingetragen:

    Code
    username ALL=NOPASSWD:service postfix start
    username ALL=NOPASSWD:service nginx start
    username ALL=NOPASSWD:service php5.6-fpm start
    username ALL=NOPASSWD:service php7.2-fpm start
    username ALL=NOPASSWD:service php7.3-fpm start
    username ALL=NOPASSWD:service php7.4-fpm start
    username ALL=NOPASSWD:service mysql start

    Damit das ganze nun auch automatisch startet, habe ich mittels RegEdit unter "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"

    einen Schlüssel erstellt mit dem Wert "C:\Windows\System32\wsl.exe sudo /opt/startup.sh"

    Folgendes Problem trat auf:

    Obwohl in der Sudoers freigegeben, wird trotzdem beim Windows-Start nach dem Passwort gefragt (cmd erscheint mit der Aufforderung zur Eingabe des Sudo PW)

    Erster Versuch dies zu fixen:

    Eine Bash zu forcen und mittels parameter -c einen command zu übergeben. Das sieht so aus, /opt/startup.sh wurde umgeschrieben in:

    Code
    #! /bin/sh
    /bin/bash -c "sudo service postfix start"

    Problem besteht, immer noch wird nach dem Passwort verlangt. Uns gehen da die Ideen aus, da weder Systemd noch init.d anscheinend von wsl offiziel unterstützt werden und daher nicht anständig funktionieren.

    Hat da wer eine Idee, wie man dieses Problem umgehen kann, dass das Passwort nicht mehr abgefragt wird.

    Zeitsynchronisation - die Codes werden auf Basis der Uhrzeit generiert. Stimmt deine Handyuhr?

    Du kannst in den Einstellungen auch eine Zeitkorrektur durchführen.

    Ah vielen Dank! Interessanterweise war die automatische Synchronisation ausgeschaltet und deswegen ist mein Handy immer eine Minute vorgegangen. Jetzt passt es wieder.

    Edit: Und ich dachte es hängt an meinem Pi-Hole, dann kann ich den ja wieder scharf schalten :D

    Frage: Hat derzeit einer von euch Probleme mit der 2FA App von Google? Ich hab seit Tagen das Problem, dass wenn ich einen Code eingebe, der als ungültig angezeigt wird, wenn ich dann ein paar mal trotzdem auf weiter klicke, geht es irgendwann.

    Das Problem daran ist, dass z. B. bei PayPal das als Anmeldeversuche zählt. Deswegen habe ich mir mein Account dort schon für 24 Stunden gesperrt.

    Moin zusammen,

    im Zuge der C-Kriese sind ja Lieferservice immer beliebter. Da wollte ich mal fragen, ob hier jemand Projekte kennt, womit man Website von Rewe Lieferservice, Flaschenpost etc. auslesen kann um eine Preisüberwachung zu haben? Ich habe es mir mal auf die schnelle angeschaut, wäre alles recht einfach, wäre da nicht immer diese Standort-Abfragen...

    Wäre aber eine sehr Interessante Sache.

    Mfg Isaac

    Moin,

    vor zwei Jahren hatte ich mit dem FS19 ähnliche Probleme, wenn nicht sogar die gleichen. Ich kann aus deinem Beitrag nicht rauslesen, ob du einen Linux Server oder Windows Server hast. Ich vermute aber du hast einen Linux Server und hast das dann eventuell unter Wine gemacht. Dort hatte ich genau die gleichen Probleme, die du beschreibst. Es war nicht spielbar.

    Wir sind danach auf einen Windows Server gewechselt und es hat wunderbar funktioniert.

    Wie gesagt, es sind mittlerweile zwei Jahre her. Das nur meine Erfahrung dazu.

    Mit git kannst du auch gezielt einen branch/tag/commit pullen.

    Wenn nicht dann vielleicht rsync?

    Mir ist bewusst, dass das geht. Jedoch muss ja der Action halt übergeben werden zu welchem Stand er pullen soll. Was ich bisher gefunden habe ist, dass es Variable für den SHA-Wert eines Commites gibt. Damit müsste man ja pullen können.


    Normalerweise gibts entweder auf Webhostingseite oder auf $GIT_ANBIETER seite einen so genannten Web Hook, der das Deployment anstößt. Ich habe glaub ich mal gelesen, dass Plesk sowas hat. Da gibt man ein git Repo an. Bei $GIT_ANBIETER kann man dann einstellen, dass diese URL bei jedem commit (oder bei commits auf bestimmten branches) aufgerufen wird. Was dafür sorgt, dass Plesk die entsprechende Revision zieht und in den passenden Ordner schmeißt.

    Auf nem Server gibt es verschiedene Level an automation.

    Von selbst gebauten Cron-Shellscripten, die 5-Minütlich nach neuen Tags/Commits schauen und diese dann deployen bis hin zu Konstrukten mit Pipeline Agents oder Software wie Ansible.

    Ich würde halt ungerne mehrere Tools nutzen müssen um das zu bewerkstelligen. Das Repo liegt bei Github und ich dachte, dass es am einfachsten wäre, die dortigen Ressourcen zu nutzen.

    Moin zusammen und frohes neues Jahr,

    ich habe mich in den vergangenen Tagen mal etwas durchs Internet gestöbert und versucht etwas zu finden. Ich habe ein Repo bei Github, es geht dort um Websites. Dieses Repo (Website) würde ich gerne mittels Github Actions deployen (auf Knopfdruck) mittels Git. Bisher habe ich aber nichts passendes gefunden, was meinen Erwartungen entspricht. Ich hätte es gerne so, dass auf Knopfdruck, also wenn ich die Action trigger, dass per SSH auf den Server/Webhosting verbunden wird, ins Verzeichnis geht und dort dann auf den jeweiligen Commit geht.

    Ein einfaches git pull, ist ja nicht die Lösung, da ich damit nicht auf ältere Versionen zurück kann, da pull ja immer die neuste Version zieht.

    Hat da jemand Erfahrung? Oder sollte ich andere Ansätze verfolgen.

    Vielen Dank schonmal!

    Hallo zusammen,

    ich erstelle gerade eine kleine PHP Seite mit mittels dem Laminas Framework. Jedoch habe ich dabei ein Problem mit dem Routing. Dies funktioniert nicht. Wenn ich über den url Helper einen Link erstelle zu einer Route, ist der Link da, aber wenn ich darauf klicke, bekomme ich "A 404 error occurred Page not found The requested URL could not be matched by routing. No Exception available". Dazu hier die genauen Daten:

    Es läuft unter WSL2, Debian. Als Webserver läuft Nginx, für PHP benutze ich PHP-FPM (v7.4).

    Meine Nginx Config:

    Nginx Config

    server {

    listen 80;

    server_name _;

    root /var/www/modliste/public;

    index index.html index.htm index.php;

    gzip on;

    access_log /var/log/nginx/default.access.log;

    error_log /var/log/nginx/default.error.log;

    location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {

    expires 30d;

    }

    location ~* /(images|cache|media|logs|tmp)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ {

    return 403;

    error_page 403 /403_error.html;

    }

    location / {

    try_files $uri $uri/ /index.php$is_args$args;

    }

    location ~ \.php$ {

    fastcgi_split_path_info ^(.+\.php)(/.+)$;

    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;

    fastcgi_index index.php;

    include fastcgi_params;

    fastcgi_param PHP_VALUE "upload_max_filesize=20M \n post_max_size=20M";

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    client_max_body_size 20M;

    }

    }

    In der module.config.php des Module habe ich folgende Routing Config drine:

    module.config.php

    'router' => [

    'routes' => [

    'home' => [

    'type' => Segment::class,

    'options' => [

    'route' => '/[/:action][/:mod]',

    'constraints' => [

    'action' => '[a-zA-Z][a-zA-Z0-9_-]+',

    'mod' => '[a-zA-Z][a-zA-Z0-9_-]+',

    ],

    'defaults' => [

    'controller' => Controller\IndexController::class,

    'action' => 'index',

    ],

    ],

    ],

    ],

    ],

    Meines Erachtens, müsste doch damit die Url "localhost/update/1" eigentlich klappen? Ich stehe da glaube ich Irgendwo auf dem Schlauch, ich glaube es liegt an dem Typ.

    Interessanterweise, gibt es derzeit auch noch das Problem, dass der Url Helper nach der Action noch einen extra Slash macht. D.h. die Route sieht dann so aus "localhost/update//4", was natürlich einen Fehler auswirft. Dies habe ich erstmal unterbunden indem ich mittels regex dies raushole... Sollte aber auch nicht so sein.

    Hat da wer eine Idee wo die Probleme dran hängen könnten? Bin für jede Hilfe dankbar!

    Isaac

    Moin,

    mal so in die Runde gefragt, hat hier wer ein funktionierendes Deployment mittels Github Actions gemacht, was über git läuft. Z.b. dann wenn der Trigger ausgelöst wird, dass der jeweilige Commit auf den Server gepullt wird?

    Ich hatte da mal was, war aber zu doof das zu sichern und hatte dann das Repo gelöscht....

    Vielleicht mag ja wer was teilen.

    Danke schonmal!

    You know what really grinds my Gear?

    Wenn man sein Pi-Hole updatet, auf die neuste Version und Wochen später merkt, dass nichts - wirklich nichts - gefiltert wird. Alles wird durchgewunken. Und zwar deshalb, weil alle Blocked Einträge (Blocklist, Domainlisten etc.) per default auf die neue "default"-Gruppe gesetzt werden. Dank diesem tollem neuem Group Management. Aber im Gegenzug werden keine anfragende Clients automatisch in dieses Group-Management System eingefügt. Das muss man erst selbst händisch machen.

    And that really grinds my gear!