我正在使用Magento构建一个虚拟商店,并且我正在使用带有" M"计划的HostGator托管,该计划支持多个站点,问题是Magento在根目录中,我在文件夹中有另一个站点/example.com.br
,但是当我尝试通过浏览器访问此站点时:
http://example.com.br
我被重定向到Magento网站:
http://magentosite.com.br/maintenance.html
根文件夹(洋红色的htaccess)上的htaccess正在重定向到magento维护页面http://magentosite.com.br/maintenance.html
,我只需要保持Magento处于维护状态,而不是某些文件夹中的站点,如文件夹/example.com.br
,/example2.com.br
等...
这是我在Magento中使用的维护代码(在Root中):
RewriteEngine On
RewriteBase /
# allow my ip to access magento store
RewriteCond %{REMOTE_ADDR} !^177.18.228.58
RewriteCond %{REQUEST_URI} !^/maintenance.html$
RewriteRule ^(.*)$ https://magentosite.com.br/maintenance.html [R=307,L]
我 https://stackoverflow.com/a/6528448/2761794 尝试了这个解决方案,但对我不起作用......
我使用了Magento的维护模式,而不是使用"maintenance.flag"文件,我创建了自定义文件并重定向了它,所以我不必更改htaccess文件,因此子文件夹中的其他站点可以正常工作。
我将这段代码添加到 Magento 根的索引.php:
$maintenanceFile = 'maintenance.html';
$ip = $_SERVER['REMOTE_ADDR'];
$allowed = array('177.99.108.78', 'another ip...');
if (file_exists($maintenanceFile) && !in_array($ip, $allowed)) {
// include_once dirname(__FILE__) . '/errors/503.php';
include_once dirname(__FILE__) . '/maintenance.html';
exit;
}