2012-11-27 68 views
1

我在PHP v5.2.4上使用MAMP在我的本地主機上運行我的測試網站。我已經做了很多嘗試,以備份在CakePHP v1.2中配置的兩個網站,並傳輸數據庫併爲數據庫輸入正確的憑據。如何將網站連接到數據庫是通過在app/config文件夾中的文件database.php中,投入以下憑據:在CakePHP網站中沒有鏈接的CSS和JavaScript文件

class DATABASE_CONFIG { 

    var $default = array(
      'driver' => 'mysqli', 
      'persistent' => false, 
      'host' => 'localhost', 
      'login' => 'user', 
      'password' => 'password', 
      'database' => 'nameofdatabase', 
      'prefix' => '', 
    ); 
} 

我已經把在輸入正確的用戶名和密碼後,數據庫配置。

在主頁上,它看起來像如下: homepage which can't read in CSS and JavaScript files

但是,當我點擊一個鏈接,它看起來像正常的頁面,閱讀在CSS和JavaScript文件從Web根目錄文件夾。

Clicked link with linked CSS and JavaScript working

我嘗試以下@ EoinMurphy的答案,沒有運氣上的所有.htaccess文件中RewriteBase /代碼編寫。儘管我的CakePHP版本錯誤,但我仍然在配置網站時使用了these instructions,因爲它有更明確的說明,然後this set of instructions令我困惑。

我不明白爲什麼看起來CSS和JavaScript正在所有的內部頁面上閱讀,但不是網站的主頁?我可以找出如何鏈接CSS和JavaScript文件的唯一方法是使用文件上的<link src="" ... />來輸出索引頁面內容。

唯一的其他更早的問題是鏈接後,如鏈接的輸出,但它只是在CSS以下,使其輸出(http://..):

a:link:after, a:visited:after { 
content:" (" attr(href) ")"; /*the content CSS made it spill out the links*/ 
font-size:90%; 
} 
+0

您的.htaccess文件在/App/.htaccess中的外觀如何。 Cake期望這個htaccess文件重定向到webroot。在運行mamp的我的mac上,我還必須在db配置中將端口參數指定爲8889。 –

回答

1

這是有關我將CakePHP網站從現場環境轉移到開發環境的最新發現。

當CakePHP放入webroot的子文件夾時,必須使用Apache配置RewriteBase。

所以,如果你已經安裝WAMP,啓用了mod_rewrite的延伸,和移動的 '活' 的網站進入C:\ WAMP \ WWW \住

打開在\ live.htaccess的.htaccess文件,\直播\ app.htaccess,\ live \ app \ webroot.htaccess 並添加'RewriteBase \ live'這一行。

正如在這裏看到:http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase

只是回顧一下幾件事情要記住:

  1. 啓用了mod_rewrite
  2. RewriteBase如果在一個子文件夾
  3. 確保數據庫的基礎設置是正確的。
+0

我想知道是否按照Apache文檔所示創建了MOD_REWRITE規則,或者只是將ReadWriteBase規則放在所有.htaccess文件中? – Abriel

+0

將RewriteBase規則放入子文件夾中的所有.htaccess文件中。根,App /,App/webroot。不是100%確定,如果你需要所有3,但那就是我使用的。 –

+0

你可以編輯你的答案併發布你的.htaccess文件中的腳本嗎?謝謝! – Abriel

相關問題