【发布时间】:2014-09-25 21:35:25
【问题描述】:
我的目标是在我的 Sites/ 文件夹中安装两个版本的 Magento。一个是我们现在使用的版本(1.12),另一个是升级版本(1.14)。我需要这样做有几个原因。
另一位开发人员升级了 Magento 并发送了站点文件,我将其放入 Sites/magento2.dev,并且我在 Sites/magento1.dev 中也有工作原件。
我创建了一个单独的数据库,从升级版本导入转储,并将其放在 magento2 的 local.xml 文件中:
<host><![CDATA[localhost]]></host>
<username><![CDATA[root]]></username>
<password><![CDATA[mypassword]]></password>
<dbname><![CDATA[mydatabase]]></dbname>
<active>1</active>
然后我进入数据库并更改了我们三个网站的core_config_data 基本网址,以模仿我在旧版本上设置的内容:
http://www.magento2.dev/
http://www.magento2-b.dev/
http://www.magento2-c.dev/
我更新了我的 /etc/apache2/extra/httpd-vhosts.conf 文件:
# Virtual Hosts
# Note: You also need to edit the hosts file /private/etc/hosts
NameVirtualHost *:80
#magento1.dev / Magento 1.12
<VirtualHost *:80>
ServerAdmin myuser@mywebsite.com
DocumentRoot "/Users/myuser/Sites/magento1.dev"
<Directory "/Users/myuser/Sites/magento1.dev">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ServerName magento1.dev
ErrorLog "/private/var/log/apache2/magento1.dev-error_log"
CustomLog "/private/var/log/apache2/magento1.dev-access_log" common
</VirtualHost>
#magento-b.dev / Magento 1.12
<VirtualHost *:80>
ServerAdmin myuser@mywebsite.com
DocumentRoot "/Users/myuser/Sites/magento1.dev"
ServerName magento1-b.dev
ErrorLog "/private/var/log/apache2/magento1-b.dev-error_log"
CustomLog "/private/var/log/apache2/magento1-b.dev-access_log" common
</VirtualHost>
#magento-c.dev / Magento 1.12
<VirtualHost *:80>
ServerAdmin myuser@mywebsite.com
DocumentRoot "/Users/myuser/Sites/magento1.dev"
ServerName magento1-c.dev
ErrorLog "/private/var/log/apache2/magento1-c.dev-error_log"
CustomLog "/private/var/log/apache2/magento1-c.dev-access_log" common
</VirtualHost>
#magento2.dev / Magento 1.14
<VirtualHost *:80>
ServerAdmin myuser@mywebsite.com
DocumentRoot "/Users/myuser/Sites/magento2.dev"
ServerName magento2.dev
ErrorLog "/private/var/log/apache2/magento2.dev-error_log"
CustomLog "/private/var/log/apache2/magento2.dev-access_log" common
</VirtualHost>
#magento2-b.dev / Magento 1.14
<VirtualHost *:80>
ServerAdmin myuser@mywebsite.com
DocumentRoot "/Users/myuser/Sites/magento2.dev"
ServerName magento2-b.dev
ErrorLog "/private/var/log/apache2/magento2-b.dev-error_log"
CustomLog "/private/var/log/apache2/magento2-b.dev-access_log" common
</VirtualHost>
#magento2-c.dev / Magento 1.14
<VirtualHost *:80>
ServerAdmin myuser@mywebsite.com
DocumentRoot "/Users/myuser/Sites/magento2.dev"
ServerName magento2-c.dev
ErrorLog "/private/var/log/apache2/magento2-c.dev-error_log"
CustomLog "/private/var/log/apache2/magento2-c.dev-access_log" common
</VirtualHost>
我更新了我的 /private/etc/hosts 文件:
127.0.0.1 localhost
127.0.0.1 www.magento1.dev
127.0.0.1 www.magento1-b.dev
127.0.0.1 www.magento1-c.dev
127.0.0.1 www.magento2.dev
127.0.0.1 www.magento2-b.dev
127.0.0.1 www.magento2-c.dev
我已经尝试了其他一些迭代(添加斜杠、http、www 等),结果总是相同。当我访问 www.magento2.dev、www.magento2-b.dev 或 www.magento2-c.dev 时,我得到的旧版本网站 (www.magento1.dev) 的版本略有不同(字体损坏) ),但使用新的 URL。登录到后端,可以看到是1.12,并且网址更改为旧版本。基本上,我好像刚刚为旧版的主商店网站创建了三个新的本地域。
我已经重新启动了 apache 和 mysql 大约一百万次。
我还应该注意,如果我到达http://localhost/~myuser/magento2.dev,我会收到 403 通知。
我在这里缺少什么?
【问题讨论】: