2010-06-27 57 views
4

我是一個drupal新手...在drupal文件夾下運行不同的CMS系統

我完成了我的第一個drupal站點。那麼客戶希望在新的drupal站點下運行他們的舊CRM,他們將CRM文件夾上傳到drupal文件夾中,當我試圖解決CRM管理時,如下所示,它重定向drupal 404頁面(這是搜索頁面)。從Drupal的

www.blablabla.com/crm/admin

錯誤信息如下:

您請求的頁面不存在。爲了您的方便,搜索 使用查詢500 shtml執行。

有沒有什麼辦法可以讓drupal忽略其文件夾下的任何文件夾?東西通過.htaccess,或者我不知道:/

欣賞幫助這麼多!非常感謝!

回答

4

我建議只從drupal內部鏈接到舊的cms,並保留drupal文件夾之外的舊cms文件夾。你的老cms也可能沒​​有正確地引用鏈接(它的期望http://oldcmslink和drupal裏面是http://drupal?q=something)。

+0

也許我可以使子域像。 http://crm.blablabla.com – 2010-06-27 09:55:35

+0

也許會工作,但我不知道這將如何解決鏈接不正確。 – 2010-06-27 10:46:42

+1

+1用於將不同的系統保存在不同的文件夾中 - 如果沒有用於管理由此造成的混亂,則無用;) – 2010-06-27 11:16:14

0

你必須在你的.htaccess文件中創建一個mod_rewrite規則。 Drupal將(幾乎)所有請求都引導到index.php,然後將請求發送到Drupal的菜單路由器。因此,除非您創建重寫規則,否則您的CMS永遠無法工作。

但我會採取controlfreak123的建議,如果你可以和移動你的舊CMS站點到另一個地址。你將不得不維護你自己版本的Drupal的htaccess文件,並在每次升級時處理這個工作。如果添加新模塊等,稍後您可能會遇到名稱衝突的小機會。

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]