I've discovered the problem...
When you do a custom 404 through AceSEF's admin, it actually creates a J! article called "404". I accidently trashed this article. Ace still finds it but joomla fails to load it.
It comes down to the lines ~1100, particularly 1111 in comp/library/uri.php:
Code: |
if ($this->AcesefConfig->page404 == 'custom') {
$_404 = '404'.$this->AcesefConfig->url_suffix;
if (($url_real = AceDatabase::loadResult("SELECT url_real FROM #__acesef_urls WHERE url_sef = '{$_404}'"))) {
$url_real = str_replace('&', '&', $url_real);
$QUERY_STRING = str_replace('index.php?', '', $url_real);
parse_str($QUERY_STRING, $vars);
if (!empty($vars['Itemid'])) {
AcesefUtility::getMenu()->setActive($vars['Itemid']);
}
} elseif (($id = AceDatabase::loadResult("SELECT id FROM #__content WHERE title = '404'"))) {
$vars['option'] = 'com_content';
$vars['view'] = 'article';
$vars['id'] = $id;
$vars['Itemid'] = 99999;
} else {
die(JText::_('ERROR_DEFAULT_404').'FILE NOT FOUND: '.$route." URI:".$_SERVER['REQUEST_URI']);
}
|
There probably should be a check that it actually exists untrashed and published... Or saving the AceSEF settings untrashes/publishes it...