【问题标题】:Cannot create local copy of Magento无法创建 Magento 的本地副本
【发布时间】:2014-02-24 07:09:25
【问题描述】:

我正在尝试在我的本地主机上创建现有 Magento 网站的副本以用于开发目的。

我遵循了此处列出的所有步骤:Copy ec2 files to local

我还为我的本地主机创建了一个假域,以便有一个“。”当我在某处读到它时,这是magento所要求的。所以现在我的本地主机假 URL 类似于:www.mysite.local

我在 OS X 10.9.1 上安装了 XAMPP,并按如下方式放置了 magento 文件系统: /Applications/XAMPP/xamppfiles/htdocs/magento/

在数据库中我添加了本地 URL 如下:

update core_config_data 
set value = ‘http://www.mysite.local/’ 
where config_id = 6;

在 local.xml 上我输入了以下参数:

<host><![CDATA[localhost]]></host> 
<username><![CDATA[myusername]]></username> 
<password><![CDATA[mypassword]]></password> 
<dbname><![CDATA[mydatabase]]></dbname>

其中 localhost 只是 localhost,myusername 是我在本地 XAMPP 服务器上恢复的 db 的用户名,mypassword 是同一个 db 的密码,mydatabase 是同一个 db 的名称。

不过,当我浏览到 www.mysite.local/magento/ 或 www.mysite.local 时,我什么也没看到。

我做错了什么?

非常感谢!

【问题讨论】:

  • 您是否在 hosts 文件中添加了条目以便浏览该地址?

标签: php magento xampp localhost local


【解决方案1】:

如果您使用的是本地服务器,这里有一些基本的故障排除来帮助您进行调试:

首先,本地服务器是否处于活动状态?您可以访问http://localhost 而不显示找不到服务器吗?如果你不能,你的本地服务器大部分没有运行。尝试启动 xampp 并启动​​ Apache。

其次,您似乎正在尝试为本地服务器创建虚拟主机。那太棒了!虚拟主机允许您为同一服务器上的项目创建单独的 URL。例如。 http://myproject.dev。 但是,您首先需要确保服务器了解您在做什么。

如果您还没有,您需要在服务器中创建虚拟主机。

我看到您正在使用 xampp。您需要做的是导航到您的 xampp 安装,并编辑您的 apache/conf/extra/httpd-vhosts.conf 文件,这是 xampp 建议您仅用于虚拟主机的文件。

Reading: Setting Up Virtual Hosts for XAMPP

例如,在 Apache 中,主机配置文件可能如下所示:

# Base
<VirtualHost *:80>
    DocumentRoot "X:/"
    ServerName localhost
</VirtualHost>

# Project - Some Project of Mine
<VirtualHost *:80>
    DocumentRoot "X:/projects/myproject/public"
    ServerName myproject.dev
    ErrorLog X:/projects/myproject/logs/apache.error.log
    CustomLog X:/projects/myproject/logs/apache.access.log common
    php_value error_log X:/projects/myproject/logs/php.error.log
</VirtualHost>

(导航到myproject.dev 会显示我的X:/projects/myproject/public 目录中的文件)

但是,此答案并不是要向您解释虚拟主机。有plentyamazing resources 在线帮助您开始设置自己的。

添加虚拟主机时不要忘记重启服务器!

如果已设置,您计算机的hosts 文件是否设置为指向您的服务器?

当您在浏览器中输入匹配的 url 时,您计算机上的 hosts 文件用于告诉它执行某些操作。

Reading: The Hosts File and what it can do for you

Reading: How to Edit Your Hosts File

例如,使用上面的 apache conf 文件设置,我的 hosts 文件还必须包括:

# My project - Localhost
127.0.0.1    myproject.dev

当我使用 URL myproject.dev 时,它告诉我的计算机将请求发送到我的本地服务器(在 localhost)。然后本地服务器接收请求,看到您正在访问myproject.dev 并检查它是否有任何与该名称匹配的虚拟主机。好吧,whaddya知道,它确实!然后,它会查看 DocumentRoot 设置以了解服务器文件的位置,并继续该过程。将您的主机文件视为某种本地 DNS。

如果您刚刚将该站点添加到主机文件中,则可能需要几分钟才能开始正确解析。稍等,清除浏览器缓存,然后重试。

最后,如果完成了这些步骤,但您没有收到任何信息,则可能是服务器配置问题,或 .htaccess 问题。

如果您在 Windows 上运行,您可以检查您的事件日志中是否存在 apache 服务器错误。如果您已在虚拟主机上设置了日志记录,则可以检查这些文件以查看它是否接收了您的请求,如果接收到了,它会如何处理这些请求。

在那之后的大多数问题至少会在您的浏览器中产生可见的错误(或空白页面)。

我希望这会有所帮助!

【讨论】:

    【解决方案2】:

    此外,检查 magento 错误日志可以告诉您问题是什么,假设此时它实际上已经遇到了 magento。

    【讨论】:

      【解决方案3】:

      正如 Sean 上面提到的,我在复制 magento 站点时遇到的最常见问题之一是意外遗漏了 .htaccess 文件 - 确保它存在于您的站点根目录中。

      如果您在更改 core_config_data 之前测试了您的网站,那么您也可以尝试删除 var/cache 和 var/session 中的所有内容。还要确保网络用户对 var 有写权限。

      问候 汉斯

      【讨论】:

      • 这应该是评论,而不是答案
      猜你喜欢
      • 1970-01-01
      • 2014-11-01
      • 2018-09-14
      • 1970-01-01
      • 1970-01-01
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多