2014-04-01 11 views
6

Tôi đang sử dụng apache2 (máy chủ giả của tôi) đã được cài đặt với Debian của tôi. Every thing đi tốt, nhưng bây giờ vấn đề với tôi .htaccess.htaccess Không hoạt động trong Linux (Debian) Apache2

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] 

Nó không làm việc
Tôi nghĩ phiên bản vì apache2 của nó mà tôi sử dụng & có lẽ vấn đề với mã của tôi hay cái gì tôi phải cấu hình trên máy chủ của tôi

tôi muốn redirect url của tôi để trang index chính nếu nó một mục sai hay không có sẵn

+0

Chính xác thì bạn đang cố gắng làm gì với các url của mình? Thay đổi từ cái gì sang cái gì? Ngoài ra tại sao bạn có hai 'RewriteCond% {REQUEST_FILENAME}! -f' của những người trong mã của bạn? – Howli

+0

Câu hỏi thứ hai là {REQUEST_FILENAME}! -l –

+0

Được rồi, còn url thì sao? Bạn đang thay đổi nó từ đâu và thay đổi thành? – Howli

Trả lời

1

Mã này:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^(.*)$ /index.php?url=$1 [QSA,R] 

sẽ chuyển hướng http://example.com/test.php-http://example.com/index.php?url=test.php nếu tập tin không tồn tại. Sự khác biệt duy nhất giữa mã của tôi ở đây và của bạn là tôi có [R] thay vì [QSA, L] Nếu nó vẫn không hoạt động cho bạn và bạn có tệp htaccess trong thư mục gốc thì tôi không nghĩ một vấn đề

+0

Tôi đã thử-ed với/mvc/index của nó không hoạt động –

24

file .htaccess Sau khi dành cả ngày, tôi nhận được câu trả lời của tôi

Trong thư mục
apache2 >>sites-available >> có tập tin gọi là mặc định

Trong mặc định chúng ta phải thay đổi nó

Từ:

<Directory /var/www/> 
     Options Indexes FollowSymLinks MultiViews 
     AllowOverride None 
     Order allow,deny 
     allow from all 
    </Directory> 

TO:

<Directory /var/www/> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow,deny 
    allow from all 
</Directory> 

làm việc của nó. Nó cho phép sử dụng các tập tin .htaccess.

+3

Thx, đó là công việc. Nhưng tôi đã thay đổi nó cho Debian trong /etc/apache2/apache2.conf – MoonYard

+0

Ghi chú vào 'Chỉ mục' tại đây. Tôi sẽ cho phép người dùng duyệt các thư mục hình ảnh/css/js của bạn. – Bira

7

tôi muốn thêm rằng /etc/apache2/mods-available/rewrite.load cần phải được kích hoạt:

a2enmod rewrite 

trên Debian tôi nghĩ rằng nó đã được kích hoạt theo mặc định, nhưng tôi đã không được.

Các vấn đề liên quan