Server | <alebal web Blog> | Appunti di PHP, MySql, javascript, Css, HTML, HTML5 e altro...

Server

Password su directory (Apache, htaccess, htpasswd) Per consentire l'accesso solo con password a una directory si fa cosi Si crea un file htaccess sulla directory che vuoi proteggere con password: sudo nano /url/directory/da/proteggere/.htaccess Nel file appena creato incolli questo: AuthType Basic AuthName "Restricted Files" AuthUserFile /url/directory/da/proteggere/.htpasswd Require valid-user Poi controlla di avere installato questo: sudo apt-get install apache2-utils Quindi creaiamo il file htpasswd con questo comando da terminale: sudo htpasswd -c /url/directory/da/proteggere/.htpasswd

Disabilitare sql_mode=only_full_group_by in Ubuntu 16.04 Con le nuove versioni di mysql in Ubuntu 16.04 capita di ritrovarsi questo errore: <b>Fatal error</b>: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'tags_search.id_search' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by in E se il tuo codice è magari un pò vecchiotto, vuole usare GROUP_BY. Come se ne esce? O modifiche tutto il tuo codice o

Aggiungere regole a iptables da lista IP e renderla persistente su Ubuntu Bloccare un singolo ip Si fa cosi: sudo iptables -I INPUT -s 93.105.187.11 -j DROP (P.S. Questo è l'IP dello stronzo che mi clonava i siti) Bloccare una lista di ip Innanzitutti abbiamo bisogno della lista di IP da bloccare, la possiamo prelevare ad esempio da qui: https://www.ip2location.com/free/robot-whitelist Poi ci serve uno script che va a leggere la lista e aggiunge le regole a iptables, lo creiamo: sudo nano blockip (viene creato in root) Nel file appena creato incolliamo questo codice: for i in `cat /root/ips|grep -v

Ubuntu server ufw (Uncomplicated firewall) bloccare IP o lista di IP (via CIDR) Per bloccare un IP, si fa cosi: ufw deny from 93.105.187.11 to any; Un CIDR, praticamente una lista di IP, si fa cosi: Per prima cosa si fa un wois sull'IP da bloccare su un sito come questo http://whois.arin.net/, che riporta anche i CIDR. Poi copia la riga CIDR e incollala nel comando ufw deny ufw deny from 39.0.0.0/8 to any; Compreso / e numeretto. Bloccare lista IP (CIDR) da un file Per prima cosa scarica la lista di IP che vuoi bloccare in formato CIDR, esd esempio da qui: https://www.ip2location.com/free/robot-whitelist, e magari rinominala in

Rimuovere certificato (Let's Encrypt) dal server Utile ad esempio se sposti un sito su un altro server, i rinnovi dei certificati sul vecchio server si impallano perchè non trovano più il virtual host del sito rimosso, oppure quando provi a richiederlo nel nuovo server Let's Encrypt ti rompe le balle perchè c'è n'è già uno, sul tuo vecchio server... Si fa cosi: Innanzitutto controlla sul server se hai la cartella "/etc/letsencrypt/" oppure "/etc/certbot/" e cambia i link di conseguenza. Si revoca il certificato: certbot revoke --cert-path

Comandi utili per gestire un server Ubuntu Tail Mostra le ultime righe, ad esempio di un log tail /var/log/syslog Tailf Segue la crescita del log tailf /var/log/syslog (Si ferma con Ctrl+C, penso...) Less Mostra una versione leggera, ad esempio di un log less /var/log/syslog Grep Cerca, ad esempio i cronjob all'interno di un log grep CRON /var/log/syslog MySql console Accede alla console di MySql mysql -u root -p (si esce con quit)   Dove sono i log: Syslog, il

Come aggiungere un sito al mio VPS Multisito su DigitalOcean Ci siamo fatti un VPS http://www.alebalweb-blog.com/47-digitalocean-installare-un-droplet-lamp-multisito-su-ubuntu-14-04.html, adesso vogliamo aggiungerci un nuovo sito. Si comincia creando la cartella del sito sul server: sudo mkdir -p /var/www/html/nuovosito.com Poi i permessi: sudo chown -R $USER:$USER /var/www/html/nuovosito.com Adesso creaiamo un nuovo file di Virtual Host copiandone uno gia fatto, copio un sito mio gia fatto, non default, cosi ho anche tutte le impostazioni di url_rewriter, cache ecc. (i file virtualhost finiscono con .conf) sudo cp

Statistiche del server NIXSTATS Mi sono installato un paio di server su DigitalOcean con l'idea di provare a vedere cosa fa un server senza Panel (tipo CPanel, CentosWebPanel , ecc) sperando in velocità prestazioni e resistenza. Però senza un qualche Panel, non ci sono nemmeno le statistiche, è vero che linux in qualche modo con qualche riga di comando ti dice sempre come sta, ma riuscire a comprenderlo è un pò un casino. E allora NIXSTATS. https://www.nixstats.com Lo uso da poco, ma per ora sembra carino, leggero, veloce, e non sembra pesare sul server. Quando ti

Digitalocean installare un droplet LAMP multisito su Ubuntu 14.04 Perchè questa guida? Perchè ci ho bestemmiato per quasi un mese per riuscire a far funzionare tutto e sicuramente tra un paio di giorni non mi ricordo più un cazzo... Sul mio droplet io ho fatto questa lista di cose: SSH LAMP Virtual Host di Apache Aggiungere il dominio a DigitalOcean FTP phpMyadmin Database e utenti MySql php.ini Symlink mod_rewriter Scrivere file mod_deflate Certificati https, Let's Encrypt OpCache memcached Varnish Cronjobs PHP Postfix Mail Tutto inizia aprendo un droplet con Ubuntu 14.04 su

Varnish connection timeout (Guru meditation Error 503)  su Centos WebPanel CWP Mi è capitato con Centos WebPanel (ma probabilmente succede un pò ovunque alla prima installazione di Varnish), che tutto funzionava correttamente ma i file "più pesanti" che richiedevano un tempo di elaborazione più lungo crashavano con errore varnish guru meditation ecc ecc... In questo case il problema è connection timeout.  La prima cosa da fare è verificare php.ini, CWP ha un bel giochino per fare questo, si chiama PHP Simple Editor. è carino, veloce e fa proprio quello che ci serve. La seconda cosa da