2013-03-05 33 views
0

我正在将网站从ASP购物车转换为Magento。我不得不将主机切换到一个PHP服务器。我正在测试的许多配置要求我将该网站托管在域上(SSL,模块密钥等)。Magento网站正在运行时的占位页面

我建立了新的主机,让所有设置数据库和magento明智。但我想知道是否有一种方法可以在实时网址上的magento站点上工作时在根上创建着陆页。所以如果您访问example.com,它会将您带到目标网页(index.html),但我可以通过访问example.com/index.php来绕过此网页。

我可以把它放在一个子域上,但这并不理想,因为我没有子域的SSL证书,并且一些模块也不会在那里激活。

任何帮助将不胜感激,因为它是现在,不希望用户看到测试版网站。

感谢

回答

1

只是在根文件夹中生成一个文件并将其命名为“maintenance.flag”magento会自动重定向到“Underconstruction”文件。虽然我不需要验证,但您可能想要设置该文件的样式,因为默认设置相当难看

+0

伟大的解决方案 - 我发现这篇文章是Syfaro的答案和你的组合:http://inchoo.net/ecommerce/magento/maintenance-mode-in-magento/ – tecshaun 2013-03-06 11:57:54

0

如果你去的子目录的版本,只是.htaccess成功验证访问:

http://www.htaccesstools.com/htpasswd-generator/

否则,在根文件夹,你可以做以下

.htaccess

DirectoryIndex index.html 

AuthType Basic 
AuthName "My Protected Area" 
AuthUserFile .htpasswd 
Require valid-user 

<FilesMatch "index.html"> 
    Allow from all 
    Satisfy any 
</FilesMatch> 
+0

谢谢w0rldart。我尝试将DirectoryIndex设置为index.html,当我转到该网站的任何其他页面时,我收到了一个回送错误。 – tecshaun 2013-03-06 00:05:45

+0

'DirectoryIndex ...'东西只适用于根文件夹。而这更准确,如果你的客户/你有动态ips,因为你必须不断更新它们。这工作 – Alex 2013-03-06 00:14:32

+0

动态IP的将不会是一个问题,因为这是只有几个小时的测试 – tecshaun 2013-03-06 00:41:51

1

我使用这个.htaccess文件,以便只有我可以访问该页面。

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteCond %{REMOTE_ADDR} !^xxx\.xxx\.xxx\.xxx 
RewriteCond %{REQUEST_URI} !/index.html$ [NC] 
RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif) [NC] 
RewriteRule .* /index.html [R=302,L] 
</IfModule> 

(您的IP地址替换 “×”)

这重定向一切的index.html,除非它从你的IP地址的。

+0

这似乎是一个很好的解决方案,虽然在取下目标网页之前,有多个人需要检查它在网站上签名。 – tecshaun 2013-03-06 00:06:36

+1

您可以相当容易地修改RegEx,您可以将单个事物更改为接受多个不同的值。要做到这一点,请将'!^ xxxx.xxx \ .xxx \ (只需在括号内的每个“。”前加一个'|'和一个反斜杠的IP)。 – ixchi 2013-03-06 00:10:13

+0

非常感谢Syfaro! – tecshaun 2013-03-06 00:39:35