到目前爲止,我的「TwigBundle」定製error404.html.twig頁面顯示正常的生產模式,當我拋出:Symfony2的:自定義404錯誤NotFoundHttpException
$this->createNotFoundException('whatevs');
然而,當「NotFoundHttpException」被拋出Symfony(例如沒有找到路由時),app_dev上顯示「找不到路由」頁面,提及「404 Not Found」,但在生產模式下它只顯示一個空白頁面...
哪根據Symfony文檔的說法,這看起來不正常:「createNotFoundException()方法創建一個特殊的NotFoundHttpException對象,該ultimat ely在Symfony內部觸發404 HTTP響應。「
那麼爲什麼我不能得到相同的行爲?有什麼我失蹤?
我正在使用master分支。
編輯:這是我的security.yml文件,我使用FOSUserBundle和FOSFacebookBundle:
security:
providers:
chain_provider:
chain:
providers: [fos_userbundle, my_fos_facebook_provider]
fos_userbundle:
id: fos_user.user_manager
my_fos_facebook_provider:
id: my.facebook.user
encoders:
"FOS\UserBundle\Model\UserInterface": sha512
firewalls:
public:
pattern: ^/
fos_facebook:
app_url: "http://apps.facebook.com/***/"
server_url: "http://localhost/facebookApp/"
login_path: /login
check_path: /checkFb
default_target_path:/
provider: chain_provider
form_login:
login_path: /login
check_path: /login_check
provider: chain_provider
remember_me: true
csrf_provider: form.csrf_provider
remember_me:
key: %secret%
anonymous: true
logout: true
login:
pattern: ^/(login$|register|resetting)
anonymous: true
role_hierarchy:
ROLE_ADMIN: ROLE_ADMIN
ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALOOW_TO_SWITCH]
ROLE_USER: ROLE_USER
access_control:
- { path: ^/, role: [IS_AUTHENTICATED_ANONYMOUSLY] }
- { path: ^/secured/, role: [IS_AUTHENTICATED_FULLY] } # This is the route secured with fos_facebook
- { path: ^/facebook/, role: [ROLE_FACEBOOK] }
的確是這個問題!感謝您的幫助。現在,我的語言選擇器出現了另一個問題,它使用了哈希合併,但不知何故無法正常工作......但現在我明確指出,is_granted是第一個阻止其他問題的問題。 儘管如此,有些奇怪的是,在生產模式下顯示自定義錯誤頁面時,這些錯誤只是一個問題......除此之外,我的網站沒有問題。 – SylvainB