2013-09-21 1 views
0

Сейчас я получил следующее в моем файле .htaccess:Как установить 2 разных 404 страницы на основе значения URL?

#Redirect 404 errors to homepage (English) 
ErrorDocument 404/

Но недавно я добавил некоторые французский контент на моем сайте. Формат URL-адреса выглядит следующим образом: domain.com/fr/[article], а английский язык по умолчанию находится только на корне domain.com/[article].

Теперь я хочу сделать 404 ErrorDocument равным ErrorDocument 404 /fr/ всякий раз, когда в начале URL-адреса есть/fr /, как показано выше.

Может кто-нибудь мне помочь?

ответ

2

Было бы проще, если вы используете файл в PHP по умолчанию в качестве страницы ошибки:

ErrorDocument 404 /error.php 

И от вашего error.php у вас есть что-то вроде:

<?php 
$path_parts = pathinfo($_SERVER['REQUEST_URI']); 
$parts = explode('/', $path_parts['dirname']); 
if (in_array("fr", $parts)) 
{ 
    // show French error message 
    // or if u want to redirect to the root of that language 
    //header("Location: http://domain.com/fr/"); 
} 
else 
{ 
    // show English error message 
    // or if u want to redirect to the root of that language 
    //header("Location: http://domain.com/"); 
} 
Смежные вопросы