I post vengono reindirizzati alla home page di XAMPP

10 gen 2013, 16:58:36
Visualizzazioni: 18.9K
Voti: 1

Ho un sito WordPress, l'ho scaricato dal live e configurato in locale usando XAMPP. Quando clicco su qualsiasi post, viene reindirizzato a localhost/xampp invece della pagina del post. Il mio file .htaccess è così:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# INIZIO 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>
<IfModule mod_headers.c>
Header append Vary User-Agent env=!dont-vary
</IfModule>
<IfModule mod_filter.c>
AddOutputFilterByType DEFLATE text/css application/x-javascript text/x-component text/html text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon
</IfModule>
</IfModule>
<FilesMatch "\.(css|js|htc|CSS|JS|HTC)$">
FileETag None
<IfModule mod_headers.c>
Header set X-Powered-By "W3 Total Cache/0.9.2.4"
</IfModule>
</FilesMatch>
<FilesMatch "\.(html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml|HTML|HTM|RTF|RTX|SVG|SVGZ|TXT|XSD|XSL|XML)$">
FileETag None
<IfModule mod_headers.c>
Header set X-Powered-By "W3 Total Cache/0.9.2.4"
</IfModule>
</FilesMatch>
<FilesMatch "\.(asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|wav|wma|wri|xla|xls|xlsx|xlt|xlw|zip|ASF|ASX|WAX|WMV|WMX|AVI|BMP|CLASS|DIVX|DOC|DOCX|EOT|EXE|GIF|GZ|GZIP|ICO|JPG|JPEG|JPE|MDB|MID|MIDI|MOV|QT|MP3|M4A|MP4|M4V|MPEG|MPG|MPE|MPP|OTF|ODB|ODC|ODF|ODG|ODP|ODS|ODT|OGG|PDF|PNG|POT|PPS|PPT|PPTX|RA|RAM|SVG|SVGZ|SWF|TAR|TIF|TIFF|TTF|TTC|WAV|WMA|WRI|XLA|XLS|XLSX|XLT|XLW|ZIP)$">
FileETag None
<IfModule mod_headers.c>
Header set X-Powered-By "W3 Total Cache/0.9.2.4"
</IfModule>
</FilesMatch>
# FINE W3TC Browser Cache
# INIZIO W3TC Page Cache core
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*\/)?w3tc_rewrite_test$ $1?w3tc_rewrite_test=1 [L]
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteRule .* - [E=W3TC_ENC:_gzip]
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{QUERY_STRING} =""
RewriteCond %{HTTP_HOST} =highimpactdataindex.com
RewriteCond %{REQUEST_URI} \/$ [OR]
RewriteCond %{REQUEST_URI} (sitemap(_index)?\.xml(\.gz)?|[a-z0-9_\-]+-sitemap([0-9]+)?\.xml(\.gz)?) [NC]
RewriteCond %{REQUEST_URI} !(\/wp-admin\/|\/xmlrpc.php|\/wp-(app|cron|login|register|mail)\.php|\/feed\/|wp-.*\.php|index\.php) [NC,OR]
RewriteCond %{REQUEST_URI} (wp\-comments\-popup\.php|wp\-links\-opml\.php|wp\-locations\.php) [NC]
RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|wordpress_\[a\-f0\-9\]\+|wordpress_logged_in) [NC]
RewriteCond %{HTTP_USER_AGENT} !(W3\ Total\ Cache/0\.9\.2\.4) [NC]
RewriteCond "%{DOCUMENT_ROOT}/wp-content/w3tc/pgcache/%{REQUEST_URI}/_index%{ENV:W3TC_UA}%{ENV:W3TC_REF}%{ENV:W3TC_SSL}.html%{ENV:W3TC_ENC}" -f
RewriteRule .* "/wp-content/w3tc/pgcache/%{REQUEST_URI}/_index%{ENV:W3TC_UA}%{ENV:W3TC_REF}%{ENV:W3TC_SSL}.html%{ENV:W3TC_ENC}" [L]
</IfModule>
# FINE W3TC Page Cache core
# INIZIO 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>

# FINE WordPress
4
Commenti

Inserisci il tuo file .htaccess. Immagino ci sia un disallineamento tra quello e la tua configurazione live. Se hai importato il database, potresti riscontrare problemi anche da quello.

s_ha_dum s_ha_dum
10 gen 2013 17:11:47

@s_ha_dum per favore controlla la mia modifica

Baig Baig
10 gen 2013 17:33:54

Disabilita la cache mentre cerchi di risolvere il problema. Qual è l'URL del tuo sito sul server Xampp? Non ho bisogno di accedervi (cosa che non potrei fare comunque), ho solo bisogno di sapere qual è.

s_ha_dum s_ha_dum
10 gen 2013 17:38:07

è http://localhost/highimpact/

Baig Baig
10 gen 2013 17:55:52
Tutte le risposte alla domanda 3
1

La tua regola di riscrittura è sbagliata. La regola esistente è per quando il sito è alla radice—http://localhost. Il tuo sito si trova a http://localhost/highimpact. La regola di riscrittura finale dovrebbe essere, credo, RewriteRule . /highimpact/index.php [L].

Se vai su wp-admin->Permalink, e salvi le impostazioni WordPress riscriverà le regole o ti dirà quali devono essere se il server non può scrivere su .htaccess. Prova questo, nel caso la mia ipotesi sia sbagliata.

Non so cosa debba succedere con le regole della cache. Immagino che il plugin della cache abbia un meccanismo simile per riscrivere le sue regole, ma non so come arrivarci.

10 gen 2013 18:10:16
Commenti

sì, ha funzionato :)

Baig Baig
10 gen 2013 18:13:40
2

Penso che tu abbia preso il database da localhost. Se è così, vai su phpmyadmin e clicca sulla tabella wp_options. Nella prima riga di quella tabella vedrai option_value "localhost/directory", cambialo con l'URL corrente del tuo sito.

10 gen 2013 17:25:46
Commenti

Ci sono due option_name che devono essere verificati -- siteurl e home.

s_ha_dum s_ha_dum
10 gen 2013 17:40:48

Ho già apportato queste modifiche nei database

Baig Baig
10 gen 2013 18:00:12
0
  1. Vai su yoursite/wp-admin Impostazioni
  2. Impostazioni dei permalink e cambia in "Normale"
4 nov 2016 07:57:32