Ukoliko koristite ili planirate da počnete da koristite njegove pogodnosti budite svesni toga da postoji velika verovatnoća da ćete dobiti grešku 500 Internal Server Error. Naravno može da bude više razloga za to. Međutim ovde ima par stvari kako da nađete i kako ono još važnije kako da popravite ukoliko dobijate tu grešku.
Prva stvar morate da proverite .htaccess fajl da vidite da li je W3 Total Cache dodat u sam fajl, tj na dnu samog fajla. Na primer treba da izgleda ovako:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule># BEGIN W3TC Browser Cache
<IfModule mod_deflate.c>
<IfModule mod_setenvif.c>
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
</IfModule>
Primetićete liniju gde je:
</IfModule># BEGIN W3TC Browser Cache
Ovo je u stvari ono što pouzrokuje grešku. „# BEGIN W3TC Browser Cache“ treba da se nalazi u novoj liniji. Rešenje? Jednostavno samo pre tarabe pritisnite enter i sačuvajte.
Zašto se ovo uopšte desilo pre svega?
Normalna WordPress instalacija kreira sam fajl .htaccess. WordPress rewrite code izgleda ovako:
# 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
W3 Total Cache izgleda da traži u fajlu komentar „# BEGIN WordPress“, tako on zna kada da doda ostale linije koda. Međutim ukoliko je htaccess fajl izmenjen i ovaj komentar ne postoji W3 Total Cache ne zna šta da radi. W3 Total Cache dodaje svoje kodove na kraju samog fajla. Ukoliko imate „# END WordPress“ liniju nije neki problem, W3 TotalCache će dodati iznad tog komentara i to neće imati nikakav uticaj na Apache.
Problem nastaje ukoliko ne postoje komentari i ne postoje nove linije već je sve u jednom redu. Apache će prijaviti 500 grešku jer će W3 dodati kod na poslednjoj liniji u svakom slučaju bez obzira šta piše.