Tôi vừa cài đặt LAMP stack trên hệ thống Ubuntu của mình.
Việc chuyển hướng không hiệu quả với tôi. Tôi không biết làm thế nào để sửa nó. Ai giúp tôi với?
/etc/apache2
và có thể được bật bằng a2*
các chương trình.
Tôi vừa cài đặt LAMP stack trên hệ thống Ubuntu của mình.
Việc chuyển hướng không hiệu quả với tôi. Tôi không biết làm thế nào để sửa nó. Ai giúp tôi với?
/etc/apache2
và có thể được bật bằng a2*
các chương trình.
Câu trả lời:
Để kích hoạt mô-đun ghi lại, hãy chạy "apache2 cho phép viết lại mô-đun":
sudo a2enmod rewrite
Bạn cần khởi động lại máy chủ web để áp dụng các thay đổi:
sudo service apache2 restart
Nếu bạn có kế hoạch sử dụng mod_rewrite trong .htaccess
các tệp, bạn cũng cần cho phép sử dụng các .htaccess
tệp bằng cách thay đổi AllowOverride None
thành AllowOverride FileInfo
. Đối với trang web mặc định, chỉnh sửa /etc/apache2/sites-available/default
:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
# changed from None to FileInfo
AllowOverride FileInfo
Order allow,deny
allow from all
</Directory>
Sau khi thay đổi như vậy, bạn cần khởi động lại Apache một lần nữa.
sudo a2enmod rewrite
và FileInfo
sửa nó cho tôi!
Tôi dám thêm một câu trả lời đặc biệt (như phần tiếp theo cho câu trả lời tuyệt vời ở trên) liên quan đến ubfox 14.04 và .htaccess
:
Trong 14.04, tên của tệp cấu hình mặc định được đổi thành 000-default.conf
:
sudo gedit /etc/apache2/sites-available/000-default.conf
thêm phần sau vào cuối tập tin:
<Directory "/var/www/html">
AllowOverride All
</Directory>
Vì một số lý do, trong Ubuntu 14.04 và apache2, root được đặt thành /www/html
. Nếu bạn muốn thay đổi gốc rễ webserver trở lại tốt cũ /www
, open 000-default.conf
và sự thay đổi
DocumentRoot /var/www/html/
đến
DocumentRoot /var/www/
và sau đó tất nhiên nó nên
<Directory "/var/www">
AllowOverride All
</Directory>
Ubuntu 14.04.4 LTS