在drupal文件夹下运行不同的CMS系统

时间:2010-06-27 09:43:36

标签: .htaccess drupal path drupal-6

我是一个drupal新手...

我完成了我的第一个drupal网站。然后客户想在新的drupal网站下运行他们的旧CRM,他们将CRM文件夹上传到drupal文件夹,当我尝试解决CRM管理员时,如下所示,它重定向drupal 404页面(这是搜索页面)。

  

www.blablabla.com/crm/admin

来自drupal的错误消息如下:

  

您请求的页面不存在。为方便起见,搜索   使用查询500执行   SHTML。

有什么方法可以让drupal忽略其文件夹下的任何文件夹?通过.htaccess的东西,或者我不知道:/

欣赏帮助太多了!非常感谢!

3 个答案:

答案 0 :(得分:4)

我建议只从drupal里面链接到旧的cms。并保留drupal文件夹之外的旧cms的文件夹。您的旧cms也可能没​​有正确引用链接(它期望http://oldcmslink并且在drupal中它将是http://drupal?q=something)。

答案 1 :(得分:2)

Drupal在.htaccess文件中使用这些行。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

要使用下面的子目录,您需要在此之前使用RewriteRule属性添加[L],或者将您的子目录添加到此处的RewriteCond列表中,例如:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/crm/ # Ignore Drupal Redirects for our CRM.
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

答案 2 :(得分:0)

您必须在.htaccess文件中制作mod_rewrite规则。 Drupal将(几乎)所有请求定向到index.php,然后将请求发送到Drupal的菜单路由器。因此,除非您创建重写规则,否则您的CMS永远不会工作。

但如果可以的话,我会把controlfreak123的建议移到另一个地址。你将不得不维护自己版本的Drupal的htaccess文件,并在每次升级时处理这项工作。如果添加新模块等,稍后可能会发生名称冲突。