Tôi có một file .htaccess mà bản đồ htaccess viết lại phá vỡ đường dẫn tương đối
http://www.myserver.com/home/để
http://www.myserver.com/index.php?section=home
phần này hoạt động tốt. Vấn đề tôi đang phải đối mặt hiện nay là, tất cả hình ảnh và css của tôi nằm trong một tài sản tiểu thư mục có tên, tức là
http://www.myserver.com/assets/images/
http://www.myserver.com/assets/css/, vv
Sau khi chuyển hướng trình duyệt sẽ tìm kiếm các tập tin dưới
http://www.myserver.com/home/assets/images/gây thứ để phá vỡ, như đây không phải là đường dẫn hợp lệ.
tôi đã có thể để thêm một viết lại rằng bản đồ ở trên để đúng thư mục con, tuy nhiên, Firebug cho thấy những hình ảnh được cư trú tại:
http://www.myserver.com/home/assets/images/
Tôi biết nó không phải là thực sự là một vấn đề, sau khi tất cả, hình ảnh và css của tôi đang tải tốt với quy tắc này. Tôi chỉ tò mò về cách tôi có thể làm cho con đường được hiển thị là đường dẫn thực tế, đó là:
http://www.myserver.com/assets/images/
Dán tệp htaccess của tôi bên dưới. Cảm ơn bạn rất nhiều trước.
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([^/]+)/assets/(css|images|js)/(.*)$ /assets/$2/$3 [NC,L]
RewriteRule ^([^/]+)/$ /index.php?section=$1 [NC,L]
Tôi đã cố gắng không để phải đi con đường chuyển đổi tất cả đường dẫn tương đối của tôi để tuyệt đối, nhưng than ôi, tôi có thể chỉ cần có ngay bây giờ. Sau đó, một lần nữa, tôi hoàn toàn quên mất thẻ
! Tiếng Anh> Tiếng Việt. Cảm ơn Gumbo, đánh giá cao nó. – irot@irot: Một lần nữa, lưu ý rằng việc thay đổi URI cơ sở bằng cách sử dụng 'BASE' sẽ ảnh hưởng * tất cả * các URI tương đối và không chỉ các URI có đường dẫn tương đối. – Gumbo
Nó cũng ảnh hưởng đến các thẻ neo bằng băm. Bất kỳ thẻ neo nào có thuộc tính href như "#content" sẽ giải quyết thành URL cơ sở chứ không phải trang hiện tại. – VirtuosiMedia