Невозможно открыть статьи Joomla по правильному URL-адресу.

StackOverflow https://stackoverflow.com/questions/723588

  •  05-09-2019
  •  | 
  •  

Вопрос

Проблема: Мои статьи имеют правильные URL-адреса:например, newssite.com/article.Однако, щелкнув статью, я получаю пустую статью.Я вижу свою боковую панель.

Я переместил свою установку Joomla в другую папку на своем сервере.Я хочу сменить свой домен с OldSite.com на NewSite.com.

Я не уверен, нужно ли мне менять база данных или не слишком.

Мой недавний конфигурация.php на NewSite.com, который был перенесен с OldSite.com.

<?php
class JConfig {
var $offline = '1';
var $editor = 'jce';
var $list_limit = '20';
var $helpurl = 'http://help.joomla.org';
var $debug = '0';
var $debug_lang = '0';
var $sef = '1';
var $sef_rewrite = '1';
var $sef_suffix = '0';
var $feed_limit = '10';
var $secret = '----------------';
var $gzip = '0';
var $error_reporting = '7';
var $xmlrpc_server = '0';
var $log_path = '/home/masi/public_html/NewSite/logs';        // I added this
var $tmp_path = '/home/masi/public_html/NewSite/tmp';         // I added this
var $live_site = 'http://www.NewSite.com/';                   // I added this
var $offset = '0';
var $caching = '0';
var $cachetime = '15';
var $cache_handler = 'file';
var $memcache_settings = array();
var $ftp_enable = '0';
var $ftp_host = '127.0.0.1';
var $ftp_port = '21';
var $ftp_user = 'admin';
var $ftp_pass = '------------';              // hidden now for security
var $ftp_root = '';
var $dbtype = 'mysql';
var $host = 'localhost';
var $user = 'masi_jml02';                   
var $db = 'masi_jml02';                      
var $dbprefix = '';
var $mailer = 'mail';
var $mailfrom = 'admin@masi.com';          
var $fromname = '';
var $sendmail = '/usr/sbin/sendmail';
var $smtpauth = '1';
var $smtpuser = '';
var $smtppass = '';
var $smtphost = 'localhost';
var $MetaAuthor = '0';
var $MetaTitle = '1';
var $lifetime = '15';
var $session_handler = 'database';
var $password = '--------------';                   // hidden now for security
var $sitename = '--------------';                   // hidden now for security
var $MetaDesc = '';
var $MetaKeys = '';
var $offline_message = 'This site is down for maintenance. Please check back again soon.';
}
?>

Я добавил комментарии к приведенному выше коду, чтобы указать строки, которые я изменил после перемещения папки установки.

Мой index.php в public_html/NewSite/templates/Theme/

<?php

// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $this->baseurl;?>/templates/system/css/general.css" type="text/css" />

<link rel="stylesheet" href="<?php echo $this->baseurl;?>/templates/<?php echo $this->template ?>/css/customize.css" type="text/css" />


<script type="text/javascript" src="<?php echo $this->baseurl;?>/templates/<?php echo $this->template ?>/js/global.js"></script>
<?php if($this->countModules('left') <= 0 ) : ?>

<?php endif; ?>
<?php $div_wrap = ($this->countModules('left')) ? 'modulewrap' : 'modulewrap_wide'; ?>
<?php $div_right = ($this->countModules('user4')) ? 'right' : 'right_wide'; ?>
<?php $div_left = ($this->countModules('right')) ? 'left' : 'left_wide'; ?>
</head><body>
<div id="outerwrap">

  <div id="header">

    <?php if($this->countModules('user1')) : ?>
    <jdoc:include type="modules" name="user1" style="xhtml" />
    <?php else: ?>
    <h1><a href="<?php echo $mainframe->getCfg('live_site');?>" title="<?php echo $mainframe->getCfg('sitename');?>"><?php echo $mainframe->getCfg('sitename');?></a></h1>
    <?php endif; ?>

  </div>

<!-- 3bar column -->
      <?php if ($this->countModules('top')): ?>
      <div id="top">
      <jdoc:include type="modules" name="top" style="xhtml" />
      </div>
      <?php endif; ?>
<!-- End 3bar column -->
  <div class="clear"></div>
  <div id="wrapper">


  <!-- Start leftcol -->
    <?php if($this->countModules('left')) : ?>
    <div id="leftcol">
      <jdoc:include type="modules" name="left" style="xhtml" />
    </div>
    <!-- END leftcol -->
    <?php endif; ?>

<!-- Right column -->
      <?php if ($this->countModules('user3')): ?>
      <div id="user3">
      <jdoc:include type="modules" name="user3" style="xhtml" />
      </div>
      <?php endif; ?>
<!-- End Right column -->

    <div id="mainbody">
      <div class="inside">
        <jdoc:include type="message" />
        <jdoc:include type="component" />
</div>
      <!-- END INSIDE -->
    </div>
    <!-- END MAINBODY -->


      <div class="clear"></div>
    </div>
    <!--END WRAP-->
  </div>
  <!--END WRAPPER-->
  <div class="clear"></div>
  <div id="bottombar"></div>
</div>
<!--END OUTERWRAP-->

<div class="designer">
<jdoc:include type="modules" name="footer" style="raw" /></div>


</body>
</html>
Это было полезно?

Решение 2

Мой сайт был настроен на использование mod_rewrite, но файл .htaccess не был доступен.

Я отключил mod_rewrite, и ссылки теперь работают.

Другие советы

хорошо...

  • вы переместили всю установку в новый каталог?подкаталог?
  • что вы подразумеваете под «неправильно открывается»?пожалуйста, предоставьте сообщения об ошибках или ссылку!
  • вы изменили файл Configuration.php!?можешь выложить сюда (убери пароли)
  • это определенно работает, ничего не делая в базе данных.
  • Вы уверены, что изменения в файле Configuration.php вступили в силу?например, файл был недоступен для записи, или вы редактировали его в автономном режиме и забыли загрузить...
  • вы вмешивались в index.php вашего шаблона?может быть URL-адрес где-то жестко закодирован?
  • есть ли еще один компонент/модуль/плагин, который требует перенастройки/реконфигурации?

Если ваш новый сайт находится в подпапке в корне веб-сервера, просто проверьте RewriteBase директива в файле .htaccess.Обновлять RewriteBase / к RewriteBase /subfolder/Как я вижу, вполне возможно, что корень вашего сайта находится public_html каталог, в то время как фактический веб-сайт находится в NewSite каталог.Так что попробуй заменить RewriteBase / к RewriteBase /NewSite/ (конечная косая черта обязательна).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top