2012-12-02 20 views
5

Tôi có tường lửa này bao gồm mọi thứ bắt đầu bằng/người dùng hoặc/quản trị viên.Cách loại trừ tuyến đường khỏi tường lửa? (hoặc tránh cookie phiên)

firewalls: 
    main: 
     pattern: ^/(user|admin) 

Nhưng bây giờ tôi cần loại trừ /user/profile/{user_id}. Điều này có thể được thực hiện với một regex? Bây giờ, nó sẽ ổn nếu nó loại bỏ bất cứ thứ gì bắt đầu với/user/profile, nếu điều đó dễ dàng hơn.

Có cơ chế nào khác do Symfony2 cung cấp để loại trừ tuyến đường không?

EDIT

tôi cần phải hoàn toàn loại trừ nói lộ trình để tránh việc gửi cookie phiên; cho phép truy cập ẩn danh với access_control là không đủ. Nếu bạn biết cách ngăn chặn cookie đó, nó cũng có thể là một giải pháp.

Trả lời

18

tôi đã không kiểm tra mã này, nhưng regex này nên làm việc:

firewalls: 
    main: 
     pattern: ^/(user|admin)(?!/profile) 
+1

Nó làm việc, nhưng tôi đã thay đổi nó cho '^/(người dùng (/ hồ sơ) | admin?!)' Và nó cũng đã làm việc. Cảm ơn – ChocoDeveloper

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