Ho un sito con una serie di vecchie pagine .html e .php che sono state inserite in un CMS.Utilizzo di mod_rewrite e mod_alias (reindirizzamento 301) insieme in .htaccess?
Attualmente nel file .htaccess ci sono circa 30 mod_alias reindirizza il seguente modulo:
redirect 301 /oldpage1.html http://www.example.com/newpage1.php
redirect 301 /oldpage2.php http://www.example.com/newpage2.php
redirect 301 /oldpage3.php http://www.example.com/newpage3.php
Ma vogliamo usare mod_rewrite di avere gli URL nel nostro CMS, che avrà la forma http://www.example.com/pagename.php
, così hanno anche la seguente:
RewriteEngine on
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1
al momento entrambi vengono applicati insieme, che si traduce in:
http://www.example.com/newpage1.php?page=oldpage1.html
Come posso applicare la regola di riscrittura solo quando non può competere è stata fatta dai mod_alias reindirizzamento 301 dichiarazioni, in modo che si verifica quanto segue:
http://www.example.com/oldpage1.html
-> reindirizza a -> http://www.example.com/newpage1.php
-> che è considerato - > http://www.example.com/index.php?page=/newpage1.php
Qualsiasi suggerimento sarebbe molto apprezzato? Grazie.