目前,我在 Apache 2.2 上安装了一个 drupal 站点,在 RHEL 6 上安装了 php 5.3。我正在移动服务器并尝试迁移该站点。我已经导入了数据库和 htaccess,但我无法访问除站点根目录以外的任何页面。
5 回答
这发生在:
a) Apache mod_rewrite 未启用。如果您具有root访问权限,请执行sudo a2enmod rewrite
或者
b) 根文件夹中的 .htaccess 文件不存在,因此您需要再次复制它。
您可能需要在导出数据库之前禁用干净的 URL,尝试?q=
在每个路径之前添加。
这是问题的故障排除清单mod_rewrite
:
确保启用 Apache 的重写模块:
sudo a2enmod rewrite
.确保原始
.htaccess
文件位于 Drupal 安装的根目录中。确保
.htaccess
Apache 正在读取现有文件。要对其进行测试,请在文件开头添加这一行,您应该会收到500 Internal Server Error :ThisIsReallyABadSyntax
。如果该
.htaccess
文件无效,请确保AllowOverride
主 Apache 配置文件(通常/etc/apache2/httpd.conf
在基于 debian 的发行版上)中的指令设置为All
. 它可能None
默认设置为。最后,确保在 Drupal 设置中启用了干净的 URL 功能。
正确迁移 Drupal 的步骤:
- 转到配置
- 找到干净的 URL
- 禁用内部勾选!
- 清理缓存!
- 下载您的站点文件
- 下载您的数据库
- 在新站点中创建新数据库
- 传输文件和数据库
- 登录 10.执行此步骤以启用 Clean URL:
100% 保证工作!
步骤: 1. 下载 - 开发版 (7.x-dev) 2. 查找文件 .htaccess 3. 只需将其复制到您的服务器 4. 就是这样!
使用phpinfo(); 比较所有服务器规格,以确保两台服务器完全相同或相似。