国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

Drupal站點換服務器后除主頁其他404錯誤如何解決

2024-08-30 19:06:43
字體:
來源:轉載
供稿:網友

以前幫客戶做的站點空間快到期了,那時單獨買了一個只能放一個站點的美國空間,后來轉到另外一個大點的虛擬主機,站點是用Drupal做的,但是轉到新主機后打開主頁正常,但是點開內頁都是404,后來發現是.htaccess文件沒傳上去

問題描述:

“page not found” Errors on every page except homepage.”

也就是說您所建立的drupal站點除了主頁面可以訪問,其它欄目全部訪問顯示為404錯誤頁面.

問題分析:造成這個問題最可能就是因為在新的服務器上的mod_rewrite模塊或者是簡潔鏈接(clean URLs)的錯誤配置(或稱drupal偽靜態)。我們在地址欄中鍵入http://www.example.com/index.php?Q=user檢測mod_rewrite模塊是否正常工作,檢查的方法如下:

如果在您輸入上述地址后出現了登錄頁面,那么我們就可以假設drupal站點的php虛擬主機服務器是沒問題的,只是mod_rewrite模塊沒有啟用。來確定mod_rewrite模塊是否啟用,我們可以建立一個名字為phpinfo.php的文件為您網站安裝環境的php探針,并在這個php文件中加入如下代碼:

<?php phpinfo();?>

保存后,使用FTP上傳到php虛擬主機上drupal站點的根目錄下,然后使用您的網站域名/phpinf.php來執行,你就可以看到您空間的環境配置。

確認mod_rewrite啟用:

在地址欄中輸入http://www.example.com/phpinfo.php查看“Loaded Module (加載模塊)”中有沒有包含mod_write。如果沒有包含的話,也就是說明apache服務器沒有加載這個模塊,更別談開啟了。剛才所創建的phpinfo.php文件保留著,在下面的介紹中,我們還要使用到它。

確認.htaccess文件正常工作

在drupal站點的根目錄下有一個.htaccess文件,首先我們使用FTP登錄到php虛擬主機的根目錄下找到這個文件,下載到本地做個備份。然后再創建一個新的.htaccess文件,并在其中加入如下表達式:

DirectoryIndex phpinfo.php

保存,再使用FTP上傳覆蓋掉drupal站點根目錄下的.htaccess文件,接著在瀏覽器中輸入http://www.example.com(您drupal站點的地址),如果跳轉到phpinfo.php,那么說明您現在站點下的.htaccess文件是正常工作的.

提示:確認完后記得把備份好的.htaccess文件還原現有站點下的.htaccess文件。

細致確認rewrite_base配置:

確認.htaccess文件正常工作后,那我們就來確認一下.htaccess文件中“RewriteBase”和“RewriteEngine” 的配置。(詳情請查看:http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html)

成功啟用.htaccess的重寫功能:

如果phpinfo.php沒有顯示的話,定位apache服務器的配置文件并且啟動.htaccess的重寫功能。這個文件的位置會隨著服務器平臺的不同而不同。比方說在Ubuntu服務器上,虛擬主機配置文件在/etc/apache2/sites-enabled/000-default 。通過.htaccess中配置mod_rewrite,apache配置需要允許最低的文件訪問控制權限,為了使這個簡單的目錄索引測試工作,apache服務器需要允許“索引”重寫。在服務器的配置文件中我們可以找到下列兩行:

  1. <Directory /filesystem/path/to/your/sites/root> 
  2. </Directory> 

在這個塊中間不要隨意添加或編輯重寫指令,會造成安全隱患,更多資料可以參考官方文獻:

http://httpd.apache.org/docs/1.3/mod/core.html#allowoverride

允許所有的重寫:

  1. <Directory /filesystem/path/to/your/sites/root> 
  2.     AllowOverride All 
  3. </Directory> 

僅僅選擇重寫:

  1. <Directory /filesystem/path/to/your/sites/root> 
  2.     AllowOverride Indexes Options FileInfo 
  3. </Directory>  //Vevb.com 

現在重載apache配置,這也是因平臺而論的,在Ubuntu平臺下,命令如下:

# /etc/init.d/apache2 reload

接著在瀏覽器中輸入您網站站點的域名,php服務器的配置信息會被展示出來,如果是這樣的話進行修改后就能夠正常的進行訪問了,當您的簡潔鏈接(Clean URLs)不能正常工作,請從“成功啟用.htaccess的重寫功能”開始操作.

Drupal官方技術文檔原文:http://drupal.org/node/228462

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大宁县| 宁乡县| 中宁县| 留坝县| 桑植县| 鞍山市| 元氏县| 房产| 贵南县| 韶关市| 青铜峡市| 磐石市| 积石山| 通州市| 宣汉县| 乌兰县| 汾西县| 淳化县| 乐亭县| 沾益县| 平潭县| 集安市| 云阳县| 建昌县| 武安市| 金华市| 江油市| 成安县| 镇宁| 绥化市| 巴彦县| 无为县| 崇州市| 天长市| 蒙自县| 小金县| 江城| 乌拉特前旗| 子洲县| 旌德县| 黄山市|