Visualizzazione post con etichetta Apache. Mostra tutti i post
Visualizzazione post con etichetta Apache. Mostra tutti i post

giovedì 21 febbraio 2013

CodeIgniter .htaccess per eliminare index.php

Come per altre cose su questo blog, più che un post, è un promemoria. In questo caso si tratta del file .htaccess nella root di installazione di CodeIgniter per eliminare index.php dall'url

RewriteEngine on
RewriteBase /
RewriteRule ^(application|system|\.git) index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [QSA,L]

salviamo il file e riavviamo apache

# /etc/init.d/apache2 restart Ora l'indirizzo, che prima apparirebbe www.example.com/index.php/modulo, è un ben più carino www.example.com/modulo

Nel caso in cui, aggiornando la pagina, non dovesse scomparire il fastidioso index.php dobbiamo probabilmente attivare il modulo rewrite di apache. Per farlo seguiamo l'altro mia guida: Apache - abilitare mod_rewrite

giovedì 31 gennaio 2013

Apache - abilitare mod_rewrite

Spesso dopo una nuova installazione il mod_rewrite non è abilitato di default. Questo modulo di apache serve per elaborare le richieste e modificare gli url in arrivo. Un esempio potrebbe essere il togliere l'estensione dalla pagina aperta, trasformando quindi

http://www.esempio.it/pagina.php

in

http://www.esempio.it/pagina

L'utilità di questo modulo è quindi quasi fondamentale.
Vediamo quindi come abilitarlo:

# a2enmod rewrite

prima di riavviare apache, andiamo a modificare le impostazioni degli eventuali virtual host.
apriamo con l'editor preferito il file

# nano /etc/apache2/sites-enabled/000-default

e applichiamo nella sezione Directory /var/www la seguente modifica

-- AllowOverride None
++ AllowOverride All

Dopo aver cambiato da None a All la regola, possiamo passare al riavvio di apache

# /etc/init.d/apache2 restart

ora siamo liberi di creare i nostri .htaccess all'interno della nostre directory /var/www e eventuali sottodirectory

martedì 15 gennaio 2013

Apache - inizializzazione base

Questa, più che una piccola guida è un mio modo per tenere traccia della configurazione molto basilare che utilizzo in ambito personale. Non vuole essere una linea guida per un'applicazione nel mondo professionale (anche se non si esclude una necessità di questo tipo). Il $ che si è liberi di mettere la propria configurazione

Finito questo disclaimer passiamo dunque all'installazione di apache. La distribuzione linux utilizzata da me e a cui faccio riferimento è Debian GNU/Linux squeeze (stable). Cominciamo quindi con l'installazione:

# apt-get install apache2

Dopo aver detto sì anche all'installazione dei pacchetti correlati, ci ritroviamo il primo "problema" che riguarda il nome del server.

... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

Dato che apache non lo trova dobbiamo pensarci noi. Basta un semplice comando:

# echo "ServerName $nomeDelMioServer" >> /etc/apache2/httpd.conf

(anche localhost come $nomeDelMioServer va bene) A questo punto io proseguo con il creare un gruppo di utenti che hanno accesso allo sviluppo web dopo di che fare in modo che le cartelle vengano create con 775 e i file 664 dando gli stessi permessi ai file già presenti

# group add web-dev
# usermod -a-G web-dev $utente
# groups $user
# chown -R root:web-dev /var/www
# chmod 2775 /var/www
# find /var/www -type d -exec chmod 2775 {} +
# find /var/www -type f -exec chmod 0664 {} +