我想將現有的Drupal 6站點從IIS服務器遷移到使用Linux和Apache的AWS實例和數據庫。Drupal站點源代碼和index.php錯誤
我一直在下面這篇文章的說明:
http://www.imamuseum.org/cc-mcn09.pdf
我已在本文的「配置MySQL」一節跳過,因爲我目前從AWS使用的數據庫是MySQL數據庫。
到目前爲止,我有... 將源代碼轉移到/ ebsvol/apache/www目錄。
在「數據庫URL格式:」下更改了我的/ebsvol/apache/www/sites/default/settings.php文件以匹配新的Ec2實例數據庫信息。
改變配置/etc/httpd/conf/httpd.conf文件包含下列虛擬主機:
<VirtualHost 00.00.00.003:80>
#ServerAdmin root
DocumentRoot /ebsvol/apache/www
#ServerName my.test.site.edu
#ServerAlias www.my.test.site.edu
ErrorLog /ebsvol/apache/log/error.log
TransferLog /ebsvol/apache/log/access.log
<Directory /ebsvol/apache/www>
AllowOverride All
</Directory>
</VirtualHost>
現在,當我打開EC2實例的公共DNS頁面顯示此錯誤消息,果然出在我的Drupal的源代碼,我的index.php文件:
<?php
// $Id: index.php,v 1.94 2007/12/26 08:46:48 dries Exp $
/**
* @file
* The PHP page that serves all page requests on a Drupal installation.
*
* The routines here dispatch control to the appropriate handler, which then
* prints the appropriate page.
*
* All Drupal code is released under the GNU General Public License.
* See COPYRIGHT.txt and LICENSE.txt.
*/
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
require_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
$return = menu_execute_active_handler();
// Menu status constants are integers; page content is a string.
if (is_int($return)) {
switch ($return) {
case MENU_NOT_FOUND:
drupal_not_found();
break;
case MENU_ACCESS_DENIED:
drupal_access_denied();
break;
case MENU_SITE_OFFLINE:
drupal_site_offline();
break;
}
}
elseif (isset($return)) {
// Print any value (including an empty string) except NULL or undefined:
print theme('page', $return);
}
drupal_page_footer();
有誰知道爲什麼Drupal站點是隻讀取index.php文件,而不是整個源代碼?
如果您需要更多信息,請讓我知道。
感謝,
謝謝奧斯卡的建議。不幸的是,這並沒有解決問題。我運行了這個命令行:cat/etc/issue並且在\ m上收到了這個Amazon Linux AMI版本2014.03 Kernel \ r所以我假設我沒有運行Fedora。 – Lgalan90
我找到了!答案是在這裏的鏈接:http://www.thingaweek.com/how-install-drupal-amazon-ec2我有一些錯誤的東西,首先我必須運行安裝文件給我,我也必須重新啓動Apache服務器。我一直想弄明白這一點現在,所以我很高興我終於得到了這個並運行:) – Lgalan90
太棒了!你有沒有更新內核?我很好奇爲什麼你不得不重啓整個服務器,這在Apache中很罕見。如果您需要重新啓動Apache或Mysql來重新加載配置,則只需重新啓動該服務即可。通常通過'sudo service apache2 restart'或者'sudo system restart http.service'根據分佈情況而定。 –