2009-10-23 33 views

Trả lời

3

.* khớp với addnew/. Hãy thử với:

RewriteRule ^[^/]*$ addnew/$0 
13

Như RC đã nói, .* cũng sẽ phù hợp với addnew/. Và vì cờ L làm cho việc từ chối quy tắc viết lại, bạn sẽ nhận được một đệ quy vô hạn.

Vì vậy, điều chỉnh quy tắc để nó không phù hợp với bạn addnew/:

RewriteRule !^addnew/ addnew%{REQUEST_URI} 
+0

trong cùng một hoàn cảnh (đối với tôi) nó làm cho vô hạn đệ quy –

+0

tôi giải quyết vấn đề của tôi. My .htaccess có các chuyển hướng khác. Nó cần phải được vô hiệu hóa bởi RewriteCond. –

19

Hãy thử giải pháp folllowing, nó hoạt động cho tôi.Tôi hy vọng điều này sẽ làm việc cho bạn quá.

  1. TRƯỚC KHI LÀM BẤT CỨ - BACKUP DB của bạn!

  2. Bây giờ, đi vào wordpress> Cài đặt> Permalinks

  3. Set nó vào một trong các thiết lập permalink khá như // năm/tháng /'

  4. mở một trình soạn thảo văn bản trên máy tính của bạn/Mac và mở file .htaccess bạn đã tải về từ máy chủ web

  5. bạn Tìm đoạn mã này

    # BEGIN Wordpress 
    <IfModule mod_rewrite.c> 
        RewriteEngine On 
        RewriteBase/
        RewriteCond %{REQUEST_FILENAME} !-f 
        RewriteCond %{REQUEST_FILENAME} !-d 
        RewriteRule . /index.php [L] 
    </IfModule> 
    # END WordPress 
    
  6. Thay thế nó bằng đoạn mã này, biếu không của Scott Yang:

    <IfModule mod_rewrite.c> 
        RewriteEngine On 
        RewriteBase/
        RewriteCond %{REQUEST_FILENAME} !-f 
        RewriteCond %{REQUEST_FILENAME} !-d 
        RewriteRule ^(.+)$ /index.php/$1 [L,QSA] 
    </IfModule> 
    
  7. Tải mã này vào thư mục gốc miền chính trên máy chủ của bạn và bạn đã hoàn tất.

Tất cả những gì nên làm việc

+0

Cảm ơn rất nhiều. Tôi vừa mới chuyển cài đặt WordPress từ thư mục con sang thư mục gốc và điều này đã khiến tôi rất đau đầu. Cảm ơn một lần nữa! –

+0

Cảm ơn rất nhiều. Điều này đã cứu ngày của tôi! Đối với tôi, dòng cụ thể này làm cho nó hoạt động 'RewriteRule^(. +) $ /index.php/$1 [L, QSA]' – Taher

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