2011-11-14 17 views
5

Tôi đang gặp khó khăn khi cố gắng xây dựng lại môi trường dev của mình.http: //magento.local reverts để sống trang web - Magento và Xampp cho OSX

Tôi đã cài đặt XAMPP và theo các bước sau:

  1. Sao lưu MYSQL DB.
  2. Sao lưu thư mục chính.
  3. Tạo DB với cùng một người dùng/dbname
  4. Tệp SQL đã nhập thành công và thư mục gốc được nhập (và các tệp vô hình) vào htdocs.
  5. đã xác minh rằng BASE_URL và secure_base_url được thiết lập để "http: //magento.local" (Tôi đã thử http://127.0.0.1, cũng)
  6. xóa tất cả bộ nhớ cache/phiên

Làm thế nào tôi có thể nhận http://magento.local để chỉ hiển thị trang web địa phương của tôi, thay vì hoàn nguyên về URL trực tiếp?

Tôi đã chỉnh sửa base_urls của mình và thậm chí cả url cookie.

+0

Không bao giờ được thử nghiệm với 'localhost', nhưng không Magento cần [FQDN] (http://en.wikipedia.org/wiki/Fully_qualified_domain_name) để hoạt động bình thường không? –

+0

Ngay cả khi sử dụng một cái gì đó như http: //magento.local với các máy chủ được thêm vào, nó vẫn reverts. Tôi đã xóa mọi phiên bản URL khỏi cơ sở dữ liệu. – danchet

+1

@danchet bạn không đề cập đến kỹ thuật cài đặt. Bạn đã cài đặt Magento mới cài đặt trước hay chỉ thay thế nội dung từ máy chủ sản xuất? –

Trả lời

2

Con đường tôi luôn luôn làm điều đó như sau ...

Tìm bảng core_config_data cho bất kỳ trường nào URL mà bạn có thể làm bằng cách chạy ...

SELECT * FROM core_config_data WHERE value LIKE 'http%' 

..hoặc đơn giản là sử dụng phpMyAdmin nếu bạn có sẵn. Một trong các trang web chính của chúng tôi có tổng cộng khoảng 8 hàng được cập nhật (có thể không phải tất cả các yêu cầu, có thể được để lại từ các phiên bản cũ hơn mà nó đang chạy). Nếu bạn thấy URL trực tiếp của bạn chỉ cần thay đổi nó ra cho địa chỉ địa phương của bạn.

Sau đó mở thư mục bộ nhớ cache và xóa mọi tệp bắt đầu bằng pháp sư - *. Thứ thường kết thúc là bắt tôi vào thời điểm này là quyền truy cập tập tin. Tôi không biết bạn đang sử dụng hệ điều hành nào, vì vậy tôi không thể cho bạn biết cách kiểm tra, nhưng nếu người dùng apache không có quyền ghi vào thư mục bộ nhớ cache trong lần đầu tiên bạn truy cập trang web, Magento tạo hầu hết các tệp thường được tạo trong thư mục DOCUMENT_ROOT/var trong thư mục tạm thời của hệ điều hành. Ví dụ, chúng tôi sử dụng Mac OSX tại nơi làm việc, nó sẽ tạo các tệp bộ nhớ cache trong/tmp/magento /, khi xóa thư mục đó, bạn nên làm tốt.

NB: Có lẽ bạn nên cập nhật các tập tin permssions của thư mục var trước khi xem lại trang web, nếu không nó sẽ tiếp tục ghi vào thư mục tạm thời, điều này sẽ chuyển bạn trở lại trong tương lai.

+0

Thay đổi quyền của tôi trên var đã làm nó! Cảm ơn! – danchet

+0

np, cái nugget nhỏ đó đã khiến tôi gãi đầu nhiều lần :) –

+0

Tôi sẽ trao tiền thưởng trong vài giờ, khi tôi có thể. – danchet

3

Magento đang tải, lưu ý rằng URL bạn đang sử dụng không giống với URL được định cấu hình và chuyển hướng bạn.

Here are các bước để chỉnh sửa URL cơ sở trong cấu hình Magento.

Tôi đoán bạn cần xóa bộ nhớ cache Magento được đề cập ở đó.

+0

Cảm ơn, nhưng như câu hỏi của tôi đã nêu, tôi đã thực hiện các bước này trước khi trải nghiệm điều này. – danchet

2

Bạn đã kiểm tra tệp htaccess chưa?

+0

Ở đâu trong tệp htaccess của tôi nó sẽ tự động tải một URL? – danchet

+0

Chúng ta phải xem tập tin htaccess của bạn trước tiên để trả lời. Dường như nó chạy một quy tắc viết lại. – tuze

1

Tôi sẽ thử xóa bộ nhớ cache Magento của bạn để bắt đầu. Cũng lưu ý rằng một số bộ nhớ cache của trình duyệt chuyển hướng, vì vậy hãy thử truy cập trang web trong trình duyệt khác hoặc xóa bộ nhớ cache của trình duyệt.

+0

Đã thử phương pháp này và tôi vẫn chỉ nhận được trang web trực tiếp. – danchet

1

đảm bảo bạn đã đặt base_url. Bạn thực sự có thể chỉnh sửa nó trong giao diện phpmyadmin cho bảng có 'config_data' trên tên của nó.

localhost/text.html = test.html [đúng]

tất nhiên nó sẽ được chính xác vì nó không đi qua 'index.php' mà hoạt động như bộ điều khiển. hãy nhớ rằng Magento sử dụng các url sạch.

www.yourdomain.com/index.php/name_for_the_page/

+0

URL cơ sở và URL cơ sở an toàn là http: //magento.local - Tôi đã xóa URL trực tiếp khỏi hầu hết mọi bản ghi trong DB, xóa bộ nhớ cache của trình duyệt và xóa bất kỳ thư mục bộ nhớ cache hoặc phiên nào trong var. Tôi đã xóa toàn bộ nội dung của var và tôi vẫn hoàn nguyên về trang web đang hoạt động. Không có đầu mối. – danchet

2

Nếu địa phương Magento cửa hàng url của bạn cũng giống như http: // magento/ sau đó Magento của bạn không làm việc, nhưng nếu url của bạn giống như http: //magento.local/ - cửa hàng Magento sẽ hoạt động tốt.

+0

Tôi thiết lập nó như thế này, nhưng nó vẫn trở lại trang web trực tiếp. – danchet

1

Nếu core_config_data của bạn là đúng, thì đây có thể là vấn đề với tệp local.xml của bạn. Đảm bảo thông tin cơ sở dữ liệu của bạn được cung cấp cho tệp này là chính xác.

httpdocs/app/etc/local.xml

<default_setup> 
     <connection> 
      <host><![CDATA[localhost]]></host> 
      <username><![CDATA[your_username]]></username> 
      <password><![CDATA[your_password]]></password> 
      <dbname><![CDATA[your_db]]></dbname> 
      <initStatements><![CDATA[SET NAMES utf8]]></initStatements> 
      <model><![CDATA[mysql4]]></model> 
      <type><![CDATA[pdo_mysql]]></type> 
      <pdoType><![CDATA[]]></pdoType> 
      <active>1</active> 
     </connection> 
</default_setup> 

Trong trường hợp này core_config_data của bạn chỉ là tốt, nó chỉ không sử dụng bảng core_config_data đúng. Tôi chạy vào cùng một vấn đề này khi cơ sở dữ liệu dàn dựng của tôi được đặt tên khác với địa phương của tôi. Một "Rất tiếc!" sai lầm.

+0

Cảm ơn bạn đã bình luận, đây là điều tôi chắc chắn sẽ tìm kiếm trong tương lai. – danchet