Post 请求无法使用 Drupal 和 Ubuntu 14.04
Post request not working Drupal and Ubuntu 14.04
在我的 ubuntu 14.04 OS 机器上 drupal 7 登录不工作,可能不仅是登录而且所有 post 请求在这里都不起作用。对于相同的文件系统和代码库,它在 windows 7 机器上运行良好。
这是我的 Apache 服务器配置:
<VirtualHost *:80>
ServerName somedomain.local
DocumentRoot "/home/mycompany/Development/Projects/Drupal/cbb"
<Directory "/home/mycompany/Development/Projects/Drupal/cbb/">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
对于上述配置,当我尝试提交登录数据时,它显示..
“网络错误:404 未找到 - http://somedomain.local/user”。
#更新:
我刚刚发现登录不能仅从 www.domainname.local/user 路径工作,但如果主页侧边栏中的这个登录表单工作正常,对于 ubuntu 中的所有 drupal 父级机器。有了这个没有错误信息也不会显示。
我在 Ubuntu 机器上的两个 drupal 站点遇到了麻烦。任何帮助将不胜感激。
您的 Apache vhost 文件看起来像是设置了关键组件,我假设 .htaccess 文件存在于您的文档根目录中,并且未根据 Drupal 默认设置进行修改。
当您单击侧边栏中的登录名 link 时,是否会转到 http://somedomain.local?q=user/login?
您的#update 表明,即使您的 Apache 环境可能已针对 "clean URLs" 设置,Drupal 中的该功能也未在 管理 > 配置 > 搜索和元数据 > 清理 URLs 中启用.
如果修改此项会影响您对 Drupal 的访问,您可以 apply/disable 通过 Drush (drush vset clean_url 0 --yes
) 或直接通过 MySQL (UPDATE variable SET value = 's:1:"0";' WHERE name = 'clean_url';
) 进行此更改 [= =14=].
另外值得一提的是,在这个相关问题上看到它 (Very strange Drupal 7 404 behaviour):确保 Apache 模块 mod_rewrite 和 mod_headers 已启用:
sudo a2enmod rewrite
sudo service apache2 restart
- 检查 .htaccess 文件是否存在于 drupal 根目录中。
检查您是否已将域添加到 /etc/hosts 文件
127.0.0.1 domain.name
- 带 'www' 和不带它的域是完全不同的。将两者都添加到 /etc/hosts 和 apache 的配置文件中以避免出现问题。
清空缓存,避免之前的域名存在缓存中
drush cc all
如果您刚刚将新站点添加到 apache 的配置中,请务必 运行:
sudo service apache2 graceful
在我的 ubuntu 14.04 OS 机器上 drupal 7 登录不工作,可能不仅是登录而且所有 post 请求在这里都不起作用。对于相同的文件系统和代码库,它在 windows 7 机器上运行良好。
这是我的 Apache 服务器配置:
<VirtualHost *:80>
ServerName somedomain.local
DocumentRoot "/home/mycompany/Development/Projects/Drupal/cbb"
<Directory "/home/mycompany/Development/Projects/Drupal/cbb/">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
对于上述配置,当我尝试提交登录数据时,它显示.. “网络错误:404 未找到 - http://somedomain.local/user”。
#更新:
我刚刚发现登录不能仅从 www.domainname.local/user 路径工作,但如果主页侧边栏中的这个登录表单工作正常,对于 ubuntu 中的所有 drupal 父级机器。有了这个没有错误信息也不会显示。
我在 Ubuntu 机器上的两个 drupal 站点遇到了麻烦。任何帮助将不胜感激。
您的 Apache vhost 文件看起来像是设置了关键组件,我假设 .htaccess 文件存在于您的文档根目录中,并且未根据 Drupal 默认设置进行修改。
当您单击侧边栏中的登录名 link 时,是否会转到 http://somedomain.local?q=user/login?
您的#update 表明,即使您的 Apache 环境可能已针对 "clean URLs" 设置,Drupal 中的该功能也未在 管理 > 配置 > 搜索和元数据 > 清理 URLs 中启用.
如果修改此项会影响您对 Drupal 的访问,您可以 apply/disable 通过 Drush (drush vset clean_url 0 --yes
) 或直接通过 MySQL (UPDATE variable SET value = 's:1:"0";' WHERE name = 'clean_url';
) 进行此更改 [= =14=].
另外值得一提的是,在这个相关问题上看到它 (Very strange Drupal 7 404 behaviour):确保 Apache 模块 mod_rewrite 和 mod_headers 已启用:
sudo a2enmod rewrite
sudo service apache2 restart
- 检查 .htaccess 文件是否存在于 drupal 根目录中。
检查您是否已将域添加到 /etc/hosts 文件
127.0.0.1 domain.name
- 带 'www' 和不带它的域是完全不同的。将两者都添加到 /etc/hosts 和 apache 的配置文件中以避免出现问题。
清空缓存,避免之前的域名存在缓存中
drush cc all
如果您刚刚将新站点添加到 apache 的配置中,请务必 运行:
sudo service apache2 graceful