我正在维护一个Joomla 3站点,我想在另一个Web主机中设置一个测试站点,以便我们可以先测试其中的代码更改。测试Web主机位于不同的服务器中,使用不同的DB等,但我希望它与生产站点尽可能相同。
将网站下载并上传到其他主机时,我应该注意哪些文件?我知道 configuration.php 。还有别的吗?
(我在搜索时找到的所有文档都是关于旧版本的Joomla:1.5,2.x ......)
答案 0 :(得分:1)
对于这样的事情,我建议使用Akeeba Backup和Kickstart
https://www.akeebabackup.com/products/akeeba-backup.html https://www.akeebabackup.com/products/akeeba-kickstart.html
只需创建您网站的备份,然后使用Kickstart将其安装在您的测试服务器上。安装过程将处理不同的设置。确保禁用从测试系统发送邮件。否则,您的用户可能会收到不应该收到的邮件。
答案 1 :(得分:1)
Sven's建议很棒,这里还有其他一些选择。
在与生产站点相同的服务器上创建测试站点可能有一些优势,首先,您将知道服务器环境将是相同的。以下是两种方法。
你可以创建一个新的测试'您的生产站点上的子目录,并使用Akeeba备份在该位置安装您的站点的副本。如果执行此操作,请注意创建第二个测试数据库,并在使用Akeeba备份时指定此新数据库。完成后,您的生产站点将在www.domain.com上,您的测试站点将在www.domain.com/test/
或者StageIt是一个非常好的商业插件,它将在您的生产服务器上设置一个临时环境。完成后,您可以测试您的想法并将它们从测试同步回到生产站点。
祝你好运!答案 2 :(得分:1)
这是另一个不涉及任何第三方组件的解决方案。你需要注意一些问题。步骤说明如下。
更改configuration.php文件中的数据库详细信息和其他配置详细信息。主要是您需要更改数据库详细信息以及日志和tmp路径。检查日志和tmp文件夹是否可写。
<?php
class JConfig {
public $db = 'joomla';
public $dbprefix = 's5oiy_';
public $log_path = 'C:/xampp/htdocs/joomla/administrator/logs';
public $memcache_server_host = 'localhost';
public $memcache_server_port = '11211';
public $password = 'dbpass';
public $sendmail = '/usr/sbin/sendmail';
public $smtpauth = '0';
public $smtphost = 'localhost';
public $smtppass = '';
public $smtpport = '25';
public $smtpsecure = 'none';
public $smtpuser = '';
public $tmp_path = 'C:/xampp/htdocs/joomla/tmp';
public $user = 'root';
public $memcached_server_host = 'localhost';
public $memcached_server_port = '11211';
public $redis_server_host = 'localhost';
public $redis_server_port = '6379';
public $redis_server_auth = '';
public $redis_server_db = '0';
public $proxy_enable = '0';
public $proxy_host = '';
public $proxy_port = '';
public $proxy_user = '';
public $proxy_pass = '';
public $session_memcache_server_host = 'localhost';
public $session_memcache_server_port = '11211';
public $session_memcached_server_host = 'localhost';
public $session_memcached_server_port = '11211';
}
&GT;
这些是在更改服务器时需要检查的configuration.php文件中的变量。
如果您不知道Base目录路径,则可能会给出错误的log和tmp路径。因此,要了解目录路径,您可以使用此代码
<?php
$dir = getcwd();
echo $dir;
?>