Coding

Disponibile la nuova versione PHP 7.x – PHP è un linguaggio dinamico, visto da molti come un linguaggio innovativo mentre altri professionisti lo considerano dannoso perché è vero che con lo sviluppo di molti linguaggi php aiuta a scrivere un codice più pulito, ma è anche vero che probabilmente parte del codice inserito non sia realmente necessario.

Comunque il team di Xlogic ha deciso di rendere fin da subito disponibile la nuova versione PHP che è possibile modificare da cPanel grazie alla tecnologia CageFS della CloudLinux.

L’ultimo aggiornamento stabile prima che uscisse questa nuova versione era la 5.6, quindi la versione PHP 6.x è stata tralasciata.

La ragione principale legata alla scelta di non rendere disponibile la versione 6.x si può ricercare sulle caratteristiche che gli sviluppatori erano intenzioni ad implementare in questa versione, in particolar modo la più rilevante era sicuramente l’implementazione di un supporto nativo per la codifica standard UNICODE che si è rilevata fin da subito dispendiosa in termini di risorse; il progetto è stato annullato e da quel momento e la maggioranza degli sviluppatori ha optato di abolire la versione 6.x per passare direttamente alla versione 7.x.

Con questa nuova versione il sito beneficerà in termini di velocità e compatibilità con Windows, Linux ed i CMS.

Stabilità

Sono stati effettuati tutti i test necessari per verificare la stabilità della nuova versione, ed i risultati sono stati più che buoni anche se è molto importante sapere che essendo una versione nuova potrebbe presentare degli eventuali bug o dei conflitti e di conseguenza è consigliabile effettuare tutti i test necessari per capire se la versione sarà stabile per il sito web.

Velocità

Gli sviluppatori hanno effettuato un lavoro eccellente ottimizzando il codice e riscrivendo una parte del Core PHP; in questo modo php 7.x permette di gestire moltissime richieste al secondo riducendo di gran lunga il tempo di risposta del primo Byte con la conseguenza di diminuire i tempi di risposta ed aumentare le prestazioni del sito web.

Per aumentare ulteriormente la velocità del sito web è stato creato opcode caching (opcache), una tecnologia che permette di utilizzare una cache che è sempre attiva in memoria con la quale vengono disposte delle pagine php precompilate che saranno immediatamente disponibili ad ogni cambio di pagina del sito web.

Compatibilità e novità del linguaggio

In questo momento solamente WordPress è compatibile al 100% con la versione php 7.x, mentre gli sviluppatori di altri CMS come ad esempio Joomla, Prestashop, Drupal stanno lavorando per renderli compatibili.

Gli sviluppatori php hanno implementato nella nuova versione diverse caratteristiche:

  • Molti Fatal Error diventano eccezioni
  • Possibile dichiarare il tipo di dato di ritorno
  • Possibile dichiarare i tipi di dato scalare
  • Classi anonime
  • Presenza del Null Coalescing Operator (??)
  • Presenza di Combined Comparison Operator chiamato anche Ship Operator (<=>)

Mentre hanno rimosso la funzione mysql_ favorendo un parametro più performante come il mysqli_, inoltre è stato anche rimosso il supporto per l’uso dei delimitatori asp e javascript.

Per quanto riguarda la compatibilità con i sistemi operativi possiamo affermare che la versione php 7.x è compatibile al 100% sia con gli Hosting Windows che con gli Hosting Linux.

 

Alla Prossima.

 

Questa guida è dedicata ai nostri clienti che utilizzano uno dei nostri VPS SSD unManaged, senza cPanel.

La compilazione PHP non è un processo semplice, molte dipendenze sono necessarie per poterlo compilare da un codice sorgente. Utilizzando dei pacchetti le dipendenze vengono rilevate automaticamente e vengono installate automaticamente con il pacchetto corrispondente.

Di seguito elenchiamo alcuni errori di compilazione PHP con la soluzione:


checking for BZip2 support… yes
checking for BZip2 in default path… not found
configure: error: Please reinstall the BZip2 distribution

Soluzione:
yum install bzip2-devel


checking for cURL support… yes
checking if we should use cURL for url streams… no
checking for cURL in default path… not found
configure: error: Please reinstall the libcurl distribution –
easy.h should be in /include/curl/

Soluzione:
yum install curl-devel


checking for fabsf… yes
checking for floorf… yes
configure: error: jpeglib.h not found.
checking for fabsf… yes
checking for floorf… yes
checking for jpeg_read_header in -ljpeg… yes
configure: error: png.h not found.

Soluzione:
yum install libpng-devel


checking for curl_multi_strerror in -lcurl… yes
checking for QDBM support… no
checking for GDBM support… no
checking for NDBM support… no
configure: error: DBA: Could not find necessary header file(s).

Soluzione:
yum install db4-devel


checking for png_write_image in -lpng… yes
If configure fails try –with-xpm-dir=
configure: error: freetype.h not found.

Soluzione:
Configurare PHP con le seguenti opzioni:
–with-xpm-dir=/usr


checking for png_write_image in -lpng… yes
configure: error: libXpm.(a|so) not found.

Soluzione:
yum install libXpm-devel


checking for bind_textdomain_codeset in -lc… yes
checking for GNU MP support… yes
configure: error: Unable to locate gmp.h

Soluzione:
yum install gmp-devel


checking for utf8_mime2text signature… new
checking for U8T_DECOMPOSE…
configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.

Soluzione:
yum install libc-client-devel


checking for LDAP support… yes, shared
checking for LDAP Cyrus SASL support… yes
configure: error: Cannot find ldap.h

Soluzione:
yum install openldap-devel


checking for mysql_set_character_set in -lmysqlclient… yes
checking for mysql_stmt_next_result in -lmysqlclient… no
checking for Oracle Database OCI8 support… no
checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h’ not found!

Soluzione:
yum install unixODBC-devel


checking for PostgreSQL support for PDO… yes, shared
checking for pg_config… not found
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path

Soluzione:
yum install postgresql-devel


checking for sqlite 3 support for PDO… yes, shared
checking for PDO includes… (cached) /usr/local/src/php-5.3.7/ext
checking for sqlite3 files in default path… not found
configure: error: Please reinstall the sqlite3 distribution

Soluzione:
yum install sqlite-devel


checking for utsname.domainname… yes
checking for PSPELL support… yes
configure: error: Cannot find pspell

Soluzione:
yum install aspell-devel


checking whether to enable UCD SNMP hack… yes
checking for default_store.h… no
checking for kstat_read in -lkstat… no
checking for snmp_parse_oid in -lsnmp… no
checking for init_snmp in -lsnmp… no
configure: error: SNMP sanity check failed. Please check config.log for more information.

Soluzione:
yum install net-snmp-devel


 

PARTE2

 

 

PARTE 1


checking whether to enable XMLWriter support… yes, shared
checking for xml2-config path… (cached) /usr/bin/xml2-config
checking whether libxml build works… (cached) yes
checking for XSL support… yes, shared
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

Soluzione:
yum install libxslt-devel


configure: error: xml2-config not found. Please check your libxml2 installation.

Soluzione:
yum install libxml2-devel


checking for PCRE headers location… configure: error: Could not find pcre.h in /usr

Soluzione:
yum install pcre-devel


libtool: link: cannot find the library `/usr/lib/libidn.la’ or unhandled argument `/usr/lib/libidn.la’

make: *** [sapi/cgi/php-cgi] Error 1

Soluzione:
cd /usr/src/
wget http://ftp.gnu.org/gnu/libidn/libidn-1.26.tar.gz
tar -zvxf libidn-1.26.tar.gz
cd libidn-1.26
./configure
make
make install
ln -s /usr/local/lib/libidn.la /usr/lib/libidn.la


libtool: link: `/usr/lib/libxml2.la’ is not a valid libtool archive

make: *** [ext/xsl/xsl.la] Error 1

Soluzione:
cd /usr/src/
wget ftp://xmlsoft.org/libxml2/libxml2-2.7.3.tar.gz
tar -zvxf libxml2-2.7.3.tar.gz
cd libxml2-2.7.3
./configure –prefix=/usr
make
make install


configure: error: Your t1lib distribution is not installed correctly. Please reinstall it.

Soluzione:
yum install t1lib-devel.x86_64


configure: error: mcrypt.h not found. Please reinstall libmcrypt.

Soluzione:
yum install libmcrypt-devel.x86_64


configure: error: Cannot find libtidy

Soluzione:
yum install libtidy libtidy-devel


 

Alla Prossima.

 

Per tutti i Webmaster che amministrano un sito web è diponibile gratuitamente un Software che permette di controllare tutti i link presenti nelle proprie pagine web evidenziando i link rotti. A volte succede che alcuni link del proprio sito non esistano più o si è dimenticato di aggiornare una vecchia pagina, in entrambi i casi se il sito è di grosse dimensioni tenere tutto sotto controllo può diventare un incubo vero e proprio, in questo caso subentra AnalogX LinkExaminer che svolge in modo egregio questo lavoro.

AnalogX LinkExaminer esamina ogni pagina web e analizza il codice HTML per estrarre i link esistenti sulla pagina. Mentre analizza la pagina, effettua anche altre verifiche: estrae il titolo della pagina, effettua un analisi SEO,  identifica le pagine duplicate, controlla i NoFollow, etc… Una volta finita la scansione è possibile esportare i risultati in alcuni formati tra cui CSV. LinkExaminer è compatibile con tutte le versioni di Windows.

Scarica AnalogX LinkExaminer

 

Alla Prossima.

 

Il redirect 301 o redirect permanente, indica ai motori di ricerca e ai vari browser di navigazione che l’indirizzo (URL) richiesto è stato spostato definitivamente verso un nuovo indirizzo. Conviene usarlo sempre quando vengono spostate delle pagine web o un dominio, perchè permette di mantenere inalterato il posizionamento sui motori di ricerca e il Page Rank.

 

Redirect 301 con i principali linguaggi di programmazione:

 

Redirect 301 Htaccess
Redirect 301 /vecchio.php http://www.nuovosito.com/nuovo.php
Redirect 301 con PHP
<? Header( “HTTP/1.1 301 Moved Permanently” ); 
Header( “Location: http://www.nuovosito.com/nuova_pagina.php” ); ?>
Redirect 301 HTML

Impostare nell’header della risposta HTTP il Meta Tag Refresh a 0.
<META HTTP-EQUIV=Refresh CONTENT=”0; URL=http://www.nuovosito.com”>
Redirect 301 ASP
<% Response.Status=”301 Moved Permanently” Response.AddHeader “Location”, 
” http://www.nuovosito.com/nuova_pagina.asp” %>
Redirect 301 ASP .NET
<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = “301 Moved Permanently”;
Response.AddHeader(“Location”,”http://www.nuovosito.com”);
}
</script>

 

Redirect 301 Perl
#!/usr/bin/perl -w use strict; print “Status: 301 Moved Permanentlyn”; 
print “Location: http://www.nuovosito.com/NuovaPagina”; exit;
Redirect 301 JSP (Java)
<%
response.setStatus(301);
response.setHeader( “Location”, “http://www.nuovosito.com/” );
response.setHeader( “Connection”, “close” );
%>

 

Redirect 301 CGI PERL
$q = new CGI;
print $q->redirect(“http://www.nuovosito.com/”);

 

Redirect 301 Ruby on Rails
def old_action
headers[“Status”] = “301 Moved Permanently”
redirect_to “http://www.nuovosito.com/”
end

Redirect 301 ColdFusion
<.cfheader statuscode=”301″ statustext=”Moved permanently”> 
<.cfheader name=”Location” value=”http://www.nuovosito.com”>

E per finire un Plugin per WordPress che permette il Redirect 301: simple 301 redirects

Per il mese di Settembre Xlogic consiglia i seguenti tool per sviluppatori.

FENIX WEB SERVER

fenix

Questo tool permette agli sviluppatori di connettersi al webserver direttamente dal desktop del proprio PC.

 

PIXEVILCON

pixelvicon

Aprendo questo link è possibile scaricare diverse icone in .psd, .png, etc..

 

BREACH

breach

Lo sviluppatore avrà la possibilità di navigare in questo Browser nato per visualizzare tutti i codici HTML.

 

MAZWAI

mazwai

Su questo sito è possibile scaricare dei video predefiniti utili per l’utente interessato al montaggio video.

 

PAGEKIT

pagekit

Pagekit è un tool CMS che permette all’utente di creare  il proprio sito web.

 

JSPDF

jspdf

Attraverso questo tool è possibile convertire i file di JavaScript in PDF.

 

SASSLINE

sassline

Con Sassline è possibile formattare il testo del proprio sito web.

 

CSS COLORGUARD

css-colorguard

Attraverso questo tool l’utente potrà selezionare il colore che più desidera ed automaticamente acquisire il codice del colore da inserire nel proprio sito web.

 

WEB DESIGNER CHECKLIST

web-designer-checklist

Web Designer Check List esegue un controllo del sito web dell’utente consigliando gli aspetti da eliminare, modificare, migliorare, etc…

 

BEAUTIFUL WEB TYPE

beautiful-web-type

Con Beautiful Web Type l’utente ha la possibilità di ottenere caratteri personalizzati (Google Font) per il proprio sito web.

 

Alla Prossima!