J'essaie de rediriger une page HTML vers une page WordPress qui n'a pas d'extension. Le résultat de la redirection de example.com/fa/home.html
vers example.com/fa/
est un 404 page not found
. Comme vous pouvez le voir, ils sont tous deux dans un sous-répertoire.
J'ai essayé plusieurs approches, que ce soit manuellement ou via cPanel pour rediriger ces URL. Notez que j'utilise un serveur Web Nginx.
Lorsque j'essaie de rediriger une autre URL telle que example.com/en/home.html
qui ne se trouve pas dans le répertoire /fa
, la redirection a été effectuée avec succès. J'ai un fichier .htaccess dans le dossier racine et un dans le répertoire /fa
. J'ai supprimé tout le contenu du fichier . Htaccess du répertoire /fa
et je n'ai laissé que la règle de la page d'index par défaut, mais toujours pas de chance.
Le code .htaccess
dans le répertoire racine est:
RewriteEngine on
DirectoryIndex Portal.html
RewriteEngine On
RewriteCond %{HTTP_Host} ^mscaspian.com$
RewriteRule (.*) http://www.mscaspian.com/$1 [R=301,L]
RewriteCond %{HTTP_REFERER} !^http://mscaspian.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://mscaspian.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.mscaspian.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.mscaspian.com$ [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp)$ http://www.mscaspian.com [R,NC]
ErrorDocument 404 /404.html
Et le code dans le répertoire /fa
est:
DirectoryIndex index.html index.htm index.php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /fa/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /fa/index.php [L]
Je pense que cela va vous aider à démarrer: je ne crois pas que la règle de réécriture soit nécessaire, lorsque la page par défaut pour WordPress est index.php
Options +FollowSymLinks
RewriteEngine on
Redirect 301 ^/home.html http://www.mscaspian.com/fa
Mettre à jour
Localisation de WordPress
Liste des plug-ins de localisation
Je ne suis en aucun cas affilié à la liste des plug-ins ci-dessus, mais sur Google pour:
localiser wordpress contenu
Mise à jour 2
Liste des redirections courantes
Selon votre commentaire, vous devez ajouter une règle de redirection pour toutes les pages, en tant que ligne distincte, par exemple:
Redirect 301 ^/about.html http://www.mscaspian.com/fa/about
Redirect 301 ^/contact.html http://www.mscaspian.com/fa/contact
Comme je l'ai dit plus tôt, puisque la page par défaut est index.php. et toutes ces pages sont gérées par index.php, la redirection vers la "Jolie URL" est parfaitement légale, à condition que vous ayez les règles pour Pretty Permalinks Enabled , avant les redirections.