Làm cách nào tôi có thể kích hoạt mod_rewrite trong apache trên Ubuntu?


13

Làm cách nào để bạn kích hoạt mod_rewrite với Apache trong Ubuntu 10.04?

Tôi cố gắng sao chép rewrite.loadtừ /etc/apache2/mods-availableđể etc/apache2/mods-enablednhưng điều đó không làm việc.

Câu trả lời:


20

Hãy thử điều này : sudo a2enmod rewrite, và sau đó khởi động lại apache.


4

Câu trả lời của Obsidian để sử dụng a2enmod là giải pháp thích hợp. Phương pháp của andol sẽ hoạt động, nhưng có thể phá vỡ khi nâng cấp. Những gì a2enmod làm chỉ đơn giản là tạo ra một liên kết tượng trưng, ​​vì vậy hai cách sau là giống nhau, cả hai đều là giải pháp:

  ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

hoặc là

  a2enmod rewrite

Tuy nhiên, a2enmod sẽ tìm kiếm các loại tệp khác, một số có .conf và có thể các loại khác. Không có lý do gì để không học lệnh này, mặc dù điều quan trọng là phải biết những gì đang diễn ra trong nền.

Sao chép tệp sẽ khiến bất kỳ quản trị viên nào trong tương lai rất khó chịu với bạn. :)


Chà, nó chỉ dành cho thử nghiệm cục bộ, nên không phải là vấn đề lớn. Nhưng ya, a2enmoddù sao cũng dễ dàng hơn.
Nathan Osman

2

Trên thực tế, trong khi là loại giải pháp sai, sao chép viết lại .load từ ./mods-av Available / sang ./mods-enables/ nên hoạt động. Bạn có nhớ để khởi động lại apache của bạn sau đó?

Trong mọi trường hợp, ./mods-enables/ thường nên chứa các liên kết tượng trưng đến các tệp tương ứng trong ./mods-av Available / . Điều này, như được đề cập bởi Obsidian, được xử lý dễ dàng nhất bằng các lệnh a2enmod và a2dismod.

Ngoài việc kích hoạt mô-đun, bạn cũng sẽ phải kích hoạt viết lại. Trước khi bạn có thể viết RewriteCond : s và RewriteRule : s phải có " RewriteEngine On " trong ngữ cảnh cấu hình đó.


Điều đó cũng làm việc. Chỉ cần nhớ đặt quyền cho các liên kết tượng trưng trong chế độ mod được kích hoạt ... hoặc bạn sẽ kéo tóc ra.
Nathan Osman
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.