Ako ste dobili grešku „Internal Server error“ na vašoj WordPress stranici, verovatno imate neke komponente koje su u sukobu sa podešavanjima na samom web serveru.
Kako dolazi do greške?
Najčešći razlog greške je prebacivanje sajta sa stare platforme koja je koristila Apache 2.2 na novu koja koristi Apache 2.4. Ovo je neophodno da se uradi jer Apache 2.2 prestaje da bude aktivan u toku leta 2017. godine.
Šta uzrokuje grešku i kako da se to reši?
Najčešći razlog za grešku je da u .htaccess fajlu postoje linije koje nisu kompatibilne sa Apache 2.4 verzijom. Najverovatnije imate instalirane plaginove poput All in One WP Security and Firewall ili W3 Total Cache koji su dodali linije u .htaccess fajl iz različitih razloga (npr. da bi ubrzali sajt)
Najbrže rešenje je da se logujete i editujete .htaccess fajl preko FTPa.
Možete da obrišete se linije osim ovih:
- # BEGIN WordPress
- <IfModule mod_rewrite.c>
- RewriteEngine On
- RewriteBase /
- RewriteRule ^index\.php$ – [L]
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule . /index.php [L]
- </IfModule>
- # END WordPress
Snimite i ponovo uploadujte fajl na web server.
Saveti za naprednije rešavanje problema:
Ako želite da zadržite linije u .htaccessu imamo nekoliko saveta za vas:
Ekstenzija The All in One WP-Security and Firewall ima ugrađen firewall koji se zove 5G ili 6G Firewall.
On dodaje linije u .htaccess koje na žalost nisu kompatibilne sa Apache 2.4 verzijom.
Zato je neophodno da linije:
- # SetEnvIfNoCase User-Agent ^$ keep_out
- SetEnvIfNoCase User-Agent (binlar|casper|cmsworldmap|comodo|diavol|dotbot|feedfinder|flicky|ia_archiver|jakarta|kmccrew|nutch|planetwork|purebot|pycurl|skygrid|sucker|turnit|vikspider|zmeu) keep_out
- Require all granted
- Require not env keep_out
- Order Allow,Deny
- Allow from all
- Deny from env=keep_out
Zamenite linijama:
- # 5G:[USER AGENTS]
- SetEnvIfNoCase User-Agent ([a-z0-9]{2000,}) bad_bot
- SetEnvIfNoCase User-Agent (archive.org|binlar|casper|checkpriv|choppy|clshttp|cmsworld|diavol|dotbot|extract|feedfinder|flicky|g00g1e|harvest|heritrix|httrack|kmccrew|loader|miner|nikto|nutch|planetwork|postrank|purebot|pycurl|python|seekerspider|siclab|skygrid|sqlmap|sucker|turnit|vikspider|winhttp|xxxyy|youda|zmeu|zune) bad_bot
- # Apache < 2.3
- Order Allow,Deny
- Allow from all
- Deny from env=bad_bot
- # Apache >= 2.3
- Require all Granted
- Require not env bad_bot
Snimite a zatim vratite fajl na web server.
Ako vaš domen koristi W3 Total Cache:
Otvorite .htaccess fajl kao što smo malopre objasini i obrišite sve linije koje je dodao W3. Ako se stranica i dalje ne vidi, logujte se u administratorski deo WordPressa i deinstalirajte W3. Zatim reinstalirajte plugin i podesite kako želite. On će sada prepoznati verziju servera u dodaće ispravne redove u .htaccess fajl.