Pour une raison quelconque, mon site génère un Shebang - /#!/splash-page
sur l’URL. Par exemple, lorsque je tape www.modernvintage1005.com
, le navigateur renvoie www.modernvintage1005.com/#!/splash-page
et chaque page suivante est /#!/about
, /#!/contact
, etc.
Il n'y a absolument rien sur Google à ce sujet. Il existe de nombreuses aides à la réécriture pour éliminer .index.php
de la page d'accueil, mais c'est tout.
Comment puis-je le réécrire pour simplement dire domain.com
et domain.com/about.html
, etc.?
Voici mon . Htaccess fichier si vous avez besoin de le voir.
# Rewrite Rule
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# compress text, html, javascript, css, xml:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddType x-font/otf .otf
AddType x-font/ttf .ttf
AddType x-font/eot .eot
AddType x-font/woff .woff
AddType image/x-icon .ico
AddType image/png .png
</IfModule>
## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 2 days"
</IfModule>
## EXPIRES CACHING ##
La syntaxe de l'URL "hashbang" ou "Shebang" est un vieux hack conçu pour fournir l'historique du navigateur à AJAX sites et pour aider Google à indexer le contenu chargé via JavaScript. Voir "Qu'est-ce que le Shebang/hashbang (#!) Sur Facebook et les nouvelles URL Twitter?" pour plus d'informations.
Votre thème WordPress, "John Smith", est chargé de la réécriture des URL de cette manière. Pour ce faire, il est possible de charger chaque page à l'aide de JavaScript sans actualisation complète de la page tout en rendant le contenu accessible à les robots de Google . (C’est ce à quoi se réfère le "AJAX" dans le "Thème du portefeuille AJAX".) Cela n’a rien à voir avec votre fichier .htaccess
.
Beaucoup de webmasters estiment maintenant que l’utilisation de la syntaxe hashbang est une mauvaise idée pour les raisons sont restées ici - ce n’est pas très évolutif et il existe maintenant de meilleures options. (c'est-à-dire "pushState" , une fonctionnalité HTML5 permettant aux développeurs de modifier l'URL du navigateur sans actualiser la page.)
Vos options sont de:
pushState
au lieu de location.hash
. (Reportez-vous à cet article .) Cela vous donnerait des URL sans hashbang, ce qui ressemble à ce que vous voulez.