Silver Stripe IIS Tutorial

Torna al blog

Google Hack
Google ci segnala i siti che potrebbero essere stati hackerati o compromessi

Parole 2010
Le parole più cercate nel 2010 su Google in Italia

Archives

Tags

  • jQuery (11)
  • cycle (10)
  • php (3)
  • galleria (2)
  • MODx (2)
  • google (2)
  • programmazione (2)
  • gallerific (1)
  • prestashop (1)
  • keyword (1)
  • Windows 20003, IIS 6, Plesk, ISAPi Rewrite & Silver stripe



    SilverStripe

    SilverStripe è content management system (CMS) open source che YDRA Web utilizza nello sviluppo di siti web di medio / alta complessita.

    La parte amministrativa del sistema di gestione dei contenuti è user-friendly e permette a chiunque di gestire il sito in piena autonomia anche senza avere conoscenze informatiche specifiche. L'amministrazione include un WYSIWYG editor grazie al quale è possibile gestire stili, immagini e altri media con sorprendente facilità.

    SilverStripe è rilasciato con licenza BSD. Sul web sono disponibili dei video dimostrativi e una demo. Non manca poi la documentazione per l'utente e per gli sviluppatori.

    La documentazione però risulta carente per sia intenzionato ad installare il CMS sul un server Windows 2003 con IIS 6 e Plesk. Abbiamo incontrato alcune difficolta in fase d'instalalzione che non permettevano il corretto funzionamento del sitema una volta completato il setup. Questo, nonostante SilverStripe, sia supportato e supporti anche le tecnologie di casa Microsoft: è incluso nella Web Application Gallery della Web Plataform e supporta SQL Server 2008. SilverStripe richiede PHP 5 e un sistema di URL Rewrite ma, come sappiamo, IIS 6, al contrario di Apache, non fornisce nativamente alcun metodo di URL Rewriting. Noi abbiamo adottato ISAPI_Rewrite della Helicon.

    Il problema riscontrato consisteva nell'impossibilità di accedere all'amministrazione o a qualunque altra pagina del sito. Il routing delle pagine continuava a proporci la home.

     

    Proprio dal dal file .htaccess nasce il probolema.

    ### SILVERSTRIPE START ###
    <Files *.ss>
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
    </Files>

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /SilverStripe

    RewriteCond %{REQUEST_URI} !(\.gif)|(\.jpg)|(\.png)|(\.css)|(\.js)|(\.php)$

    RewriteCond %{REQUEST_URI} ^(.*)$
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule .* sapphire/main.php?url=%1&%{QUERY_STRING} [L]
    </IfModule>
    ### SILVERSTRIPE END ###

    Avevamo dato per scontato che ISAPI_Rewrite fosse pienamente compatibile con Apache ma, dopo un approfondito debug abbiamo notato che la stringa RewriteRule .* sapphire/main.php?url=%1&%{QUERY_STRING} [L] non è supportata.

    In realtà basta cambiare un solo carattere %. Riportiamo di seguito il file .htaccess riveduto e corretto utile a far funzionare il vostro nuovo sito basato SileverStripe anche si IIS6 con ISAPI_Rewrite.

    ### SILVERSTRIPE START ###
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_URI} !(\.gif)(\.jpg)(\.png)(\.css)(\.js)(\.php)$
    RewriteCond %{REQUEST_URI} ^(.*)$
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule (.*) sapphire/main.php?url=$1&%{QUERY_STRING} [L]
    ### SILVERSTRIPE END ###

    Vi segnalo infine un'ultima possibilità d'errore nella fase d'installazione. SilverStripe come la maggioranza dei sistemi di gestione dei contenuti richiede che vengano dati i giusti permessi di lettura, scrittura, esecuzione alle singole cartelle / file; se PHP non sarà in grado di scrivere le coordinate del vostro data base sul file _config.php nella cartella mysite Fatal error: DB::connect: Not passed a valid database config.


    Comments (0)



    This thread has been closed from taking new comments.