首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将drupal网站从本地主机迁移到服务器时遇到的问题

将drupal网站从本地主机迁移到服务器时遇到的问题
EN

Drupal用户
提问于 2014-07-27 06:02:37
回答 3查看 787关注 0票数 0

我正在尝试将我的Drupal网站从本地主机迁移到服务器,但我遇到了一些问题。我试过很多谷歌的导游,但没有运气。

我所做的:

首先,我在服务器上做了一个新的drupal安装。

安装完成后,我将.htaccess文件编辑为

代码语言:javascript
运行
复制
RewriteBase /site-name

然后我使用mysqldump将我的数据库从localhost转储到服务器,我发现在localhost中总共有126个表,而在服务器中有128个表。

然后,我将完整的“站点”目录从localhost复制到服务器。

我的问题:

现在,当我进入www.mysite.com/site-name时,我得到了我的网站的适当主页,但是如果我转到任何其他链接,比如www.mysite.com/site-name/user,它就无法打开页面,但是如果我输入www.mysite.com/?q=user,它就能很好地工作,并且对于/content/config等所有页面都是如此。

我该怎么办才能解决这个问题呢?我认为这是一个clean-urls的问题,所以我去配置,但它说干净的网址启用,但测试失败!

我需要让网站在明天前生存,所以需要你的帮助!

注意:我在本地主机和服务器上使用ubuntu。

谢谢!

EN

回答 3

Drupal用户

发布于 2014-07-27 06:12:08

这是因为您需要在服务器中配置虚拟主机。也有适当的权限。clean-urls与mod_rewrite.so文件相关联。因此,在apache配置中,您需要启用mod_rewrite.so并重新启动httpd或apache2进程。

根据您正在使用的发行版(您应该在您的问题中提到),我给您提供了两个链接以供查看。

如何在上建立Apache虚拟主机

如何在Ubuntu上建立Apache虚拟主机

编辑#1,因为这是一个仅限于Drupal的讨论论坛,请咨询http://askubuntu.com有关服务器的问题。但是为了您的帮助,我给您提供了一个如何启用国防部_rewrite.so的链接。每个部署过程都应该与产品服务器的开发服务器保持一致。因此,就我而言,您应该对本地安装做一个完整的zip/tar,并将其上传到生产中。归档文件还应该包含本地Drupal安装数据库。这个表中的差异可能是由于Drupal核心最近的更新或由于一些控制模块安装造成的。我提供的链接是告诉您如何在用户完全管理的服务器中安装虚拟主机。如果您面临任何问题,最好与服务器支持小组协商,我希望他们会帮助您,因为您正在支付费用;)。

票数 0
EN

Drupal用户

发布于 2014-07-27 06:16:09

  • 为了避免需要?q=user?q=some/page/path,您应该确保在Apache服务器上启用了ModRewrite。如果您是在共享主机上,则需要要求主机提供程序启用Apache的这个模块。
  • 移动Drupal站点实质上是将所有的PHP + MySQL数据从1台计算机移动到另一台计算机。选择你的工具: mysqldump + zip,rsync,scp,ftp .随便什么..。但是这个过程本质上是一样的--把所有的东西都移走。

不幸的是,Drupal安装之间少了两个表的原因只是代表您的糟糕的项目管理--祝您好运,跟踪这些差异。

比较两个Drupal安装之间的drush pm-list应该有助于在一个系统上找到任何模块,而不是在另一个系统上。我喜欢使用drush archive-dumpdrush archive-restore来移动Drupal站点--但是在您的时间限制下,我建议您使用SQL迁移工具和您最熟悉的代码迁移工具。

票数 0
EN

Drupal用户

发布于 2014-07-28 04:20:22

在命令行中:

代码语言:javascript
运行
复制
sudo nano /etc/apache2/sites-available/[your-vitualhost].conf

然后,将AllowOverride全部放入您的<Directory>中,如下所示:

代码语言:javascript
运行
复制
<Directory /var/www/>
        # ...                 
        AllowOverride All # this allow use the .htaccess file.
        # ...
</Directory>

最后,确保启用了mod_rewrite:

代码语言:javascript
运行
复制
sudo a2enmod rewrite

然后,重新启动apache:

代码语言:javascript
运行
复制
sudo /etc/init.d/apache2 restart

欢迎光临。

票数 0
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/124825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档