Permalinks en Ubuntu server i Apache 2

Aquesta és una incidència que em trobo cada vegada que preparo un servidor web amb Ubuntu i migro un WordPress, els permalinks o enllaços permanents acostumen a no funcionar.

. Què és un enllaç permanent? – Wikipedia

Enllaç permanent
Un enllaç permanent (anglès permalink) és un enllaç que s’usa en els blocs per a assignar un URL permanent a cada entrada del bloc, per a després poder referenciar-la. D’aquesta forma s’identifica de manera univoca un contingut (article, discussió, anàlisi…) sobre un tema o qüestió en el bloc de destinació. És a dir, es facilita l’accés (i una referència) directa a tots aquells que puguin estar interessats en el contingut referenciat. Per a usar-lo, es copia l’enllaç i s’enganxa a un altre lloc per tal de poder-hi fer clic i anar directament a l’original referenciat.
També són usats en multitud de pàgines web (les anomenades estàtiques) per a millorar el posicionament web en cercadors, i són molt usuals en els fòrums per tal que l’URL sigui el títol del post o fòrum separat per guions, per exemple “això-és-un-exemple-d’enllaç-permanent.html”. Això fa que la seva visibilitat sigui molt millor.

. Error amb el que ens trobem

Si activem el permalink en el wordpress i anem a provar alguna de les nostres entrades ens trobem amb el següent error:

Error 404
The post or page you requested can not be found on this site.
Visit the Home Page or browse through the Archives.

o

The Requested URL was not found on this server

2016-05-18_11-17-35

X5Utk

. Com ho resolem

Anem via consola al nostre servidor i fem el seguent

1.- Crear manualment un fitxer “.htaccess” en l’arrel del nostre wordpress. (Aquesta és la carpeta que conté el wp-contetn, wp-admin, wp-includes). Aixó ho farem amb un:

sudo vi .htaccess

2.- Canviarem el propietari del fitxer que acabem de crear i li donarem al grup www-data

sudo chown -v :www-data "/path on es troba el fitxer/.htaccess"

3.- Donarem permís d’escriptua al apache2 sobre aquest fitxer

sudo chmod -v 664 "/path on es troba el fitxer/.htaccess"

4.- Activarem el mòdul mod_write en el apache2

sudo a2enmod rewrite

5.- Editem el fitxer /etc/apache2/apache2.conf

sudo vi /etc/apache2/apache2.conf

Modificarem “AllowOverride None” i el deixarem amb “AllowOverride All” tal i com es mostra a continuació

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

També afegirem aquesta línia en el mateix fitxer de configuració, ho podem fer al final de tot.

ServerName localhost

6.- Reiniciem l’Apache2

sudo /etc/init.d/apache2 restart

I així és com en s hauria de funcionar

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.