2017-04-14 28 views
1

我是Symfony3的新手。Symfony3 - 將基本URL更改爲「/ is」

我應該怎麼做才能將我的基地址https://example.com改爲https://example.com/is/

整個應用程序應該從/is/路徑開始。

我做了什麼,直到現在是,

的routing.yml

user: 
    resource: "@UserBundle/Resources/config/routing.yml" 
    prefix: /is/ 

app: 
    resource: '@AppBundle/Controller/' 
    type: annotation 

security.yml

access_control: 
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/.*, role: ROLE_SUPER_ADMIN } 

但沒有獲得成功。我在哪裏錯了,我該怎麼辦?

編輯 - 當前行爲

目前,當我去https://example.com/is/它重定向我https://example.com/login因爲access_controlsecurity.yml

如果我輸入https://example.com/is/login,它會顯示我404 Path not found錯誤。

+0

你是什麼意思,但「沒有得到成功」?請編輯您的問題以解釋當前的行爲和您的期望。 – Kwadz

+0

@Kwadz請看我編輯的問題。 –

+0

但你爲什麼要那樣? – goto

回答

1
resource: "@AppBundle/Controller/" 
    type: annotation 
    prefix: /is 

然後,你需要把後面的IS_AUTHENTICATED_ANONYMOUSLY /登錄URL或你將永遠不會獲得登錄當您沒有被記錄時的頁面

access_control: 
    - { path: ^/is/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/register, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/.*, role: ROLE_SUPER_ADMIN } 
1

routing.yml使用這種陽明:

resource: "@AppBundle/Controller/" 
    type: annotation 
    prefix: /is 

看看是否能工程。


編輯#2

而且改變security.yml像這樣:

access_control: 
    - { path: ^/is/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/register, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/is/.*, role: ROLE_SUPER_ADMIN } 
+0

請參閱我的'security.yml'我已經使用FOS用戶包進行身份驗證。所以如果我在我的瀏覽器中鍵入'/ is',它會將我重定向到'/ login'。什麼需要改變?(通過清除緩存測試)。請幫忙。 –

+0

查看我更新的編輯。我認爲這應該是所有的變化?嘗試一下。 –