gpt4 book ai didi

symfony - fosuserbundle 没有找到 "GET/login/"的路由

转载 作者:行者123 更新时间:2023-12-04 06:39:10 24 4
gpt4 key购买 nike

我最近使用 composer 更新了 symfony2,现在我无法登录。以下是相关文件。让我知道是否需要更多数据。

应用程序/配置/routing.yml

app_admin:
resource: "@AppAdminBundle/Resources/config/routing.yml"
prefix: /admin
host: dashboard.muchomonitor.com

app_website:
resource: "@AppWebsiteBundle/Resources/config/routing.yml"
prefix: /
host: www.muchomonitor.com

app_monitor:
resource: "@AppMonitorBundle/Resources/config/routing.yml"
prefix: /
host: dashboard.muchomonitor.com

fos_user_security:
resource: "@FOSUserBundle/Resources/config/routing/security.xml"
host: dashboard.muchomonitor.com

fos_user_security_reset:
resource: "@FOSUserBundle/Resources/config/routing/resetting.xml"
prefix: /login
host: dashboard.muchomonitor.com

应用程序/配置/security.yml
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512

role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: ROLE_ADMIN

providers:
fos_userbundle:
id: fos_user.user_provider.username
user:
entity: { class: App\MonitorBundle\Entity\User, property: username }

firewalls:
main:
pattern: ^/
provider: user
form_login:
provider: fos_userbundle
csrf_provider: form.csrf_provider
login_path: fos_user_security_login
check_path: fos_user_security_check
default_target_path: /
logout: true
anonymous: true
logout:
path: /logout
target: /login

access_control:
- { path: ^/admin, role: ROLE_SUPER_ADMIN, host: dashboard.muchomonitor.com }
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY, host: dashboard.muchomonitor.com }
- { path: ^/_, role: ROLE_ADMIN } # Development mode
- { path: ^/public-status, role: IS_AUTHENTICATED_ANONYMOUSLY, host: dashboard.muchomonitor.com }
- { path: ^/ipn, role: IS_AUTHENTICATED_ANONYMOUSLY, host: dashboard.muchomonitor.com }
- { path: ^/invoice, role: IS_AUTHENTICATED_ANONYMOUSLY, host: dashboard.muchomonitor.com }
- { path: ^/, role: ROLE_USER, host: dashboard.muchomonitor.com }

供应商/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config/routing/security.xml
<?xml version="1.0" encoding="UTF-8" ?>

<routes xmlns="http://symfony.com/schema/routing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">

<route id="fos_user_security_login" pattern="/login">
<default key="_controller">FOSUserBundle:Security:login</default>
</route>

<route id="fos_user_security_check" pattern="/login_check">
<default key="_controller">FOSUserBundle:Security:check</default>
<requirement key="_method">POST</requirement>
</route>

<route id="fos_user_security_logout" pattern="/logout">
<default key="_controller">FOSUserBundle:Security:logout</default>
</route>

</routes>

供应商/friendsofsymfony/user-bundle/FOS/UserBundle/Resources/config/routing/resetting.xml
<?xml version="1.0" encoding="UTF-8" ?>

<routes xmlns="http://symfony.com/schema/routing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">

<route id="fos_user_resetting_request" pattern="/request">
<default key="_controller">FOSUserBundle:Resetting:request</default>
<requirement key="_method">GET</requirement>
</route>

<route id="fos_user_resetting_send_email" pattern="/send-email">
<default key="_controller">FOSUserBundle:Resetting:sendEmail</default>
<requirement key="_method">POST</requirement>
</route>

<route id="fos_user_resetting_check_email" pattern="/check-email">
<default key="_controller">FOSUserBundle:Resetting:checkEmail</default>
<requirement key="_method">GET</requirement>
</route>

<route id="fos_user_resetting_reset" pattern="/reset/{token}">
<default key="_controller">FOSUserBundle:Resetting:reset</default>
<requirement key="_method">GET|POST</requirement>
</route>

</routes>

php 应用程序/控制台路由:调试
Name                           Method   Scheme Host                       Path
app_admin_users ANY ANY dashboard.muchomonitor.com /admin
app_admin_add_user ANY ANY dashboard.muchomonitor.com /admin
app_admin_edit_user ANY ANY dashboard.muchomonitor.com /admin
app_admin_delete_user ANY ANY dashboard.muchomonitor.com /admin/user/{id}/delete
app_admin_login_user ANY ANY dashboard.muchomonitor.com /admin/user/{id}/login
app_admin_plans ANY ANY dashboard.muchomonitor.com /admin/plans
app_admin_delete_plan ANY ANY dashboard.muchomonitor.com /admin/plans/{id}/delete
app_admin_edit_plan ANY ANY dashboard.muchomonitor.com /admin/plans/{id}/edit
app_admin_add_plan ANY ANY dashboard.muchomonitor.com /admin/plans/add
app_admin_invoices ANY ANY dashboard.muchomonitor.com /admin/invoices
app_admin_delete_invoice ANY ANY dashboard.muchomonitor.com /admin/invoices/{id}/delete
app_admin_edit_invoice ANY ANY dashboard.muchomonitor.com /admin/invoices/{id}/edit
app_admin_add_invoice ANY ANY dashboard.muchomonitor.com /admin/invoices/add
app_website_index ANY ANY www.muchomonitor.com /
app_website_pricing ANY ANY www.muchomonitor.com /pricing
app_website_privacy_policy ANY ANY www.muchomonitor.com /legal/privacypolicy
app_website_signup ANY ANY www.muchomonitor.com /signup
app_website_tos ANY ANY www.muchomonitor.com /legal/termsofservice
app_website_contact_us ANY ANY www.muchomonitor.com /contactus
app_monitor_dashboard ANY ANY dashboard.muchomonitor.com /
app_monitor_dashboard_search ANY ANY dashboard.muchomonitor.com /dashboard/search/{filter}
app_monitor_dashboard_toggle ANY ANY dashboard.muchomonitor.com /dashboard/toggle/{monitor}
app_monitor_dashboard_delete ANY ANY dashboard.muchomonitor.com /dashboard/delete
app_monitor_dashboard_test ANY ANY dashboard.muchomonitor.com /dashboard/test
app_monitor_monitors ANY ANY dashboard.muchomonitor.com /monitors
app_monitor_monitors_edit ANY ANY dashboard.muchomonitor.com /monitors/edit/{monitor}
app_monitor_monitors_new ANY ANY dashboard.muchomonitor.com /monitors/new
app_monitor_monitors_toggle ANY ANY dashboard.muchomonitor.com /monitors/toggle/{monitor}
app_monitor_monitors_delete ANY ANY dashboard.muchomonitor.com /monitors/delete
app_monitor_monitors_test ANY ANY dashboard.muchomonitor.com /monitors/test
app_monitor_report ANY ANY dashboard.muchomonitor.com /report
app_monitor_reports ANY ANY dashboard.muchomonitor.com /report
app_monitor_report_specific ANY ANY dashboard.muchomonitor.com /report/{monitor}
app_monitor_accounts ANY ANY dashboard.muchomonitor.com /accounts
app_monitor_accounts_edit ANY ANY dashboard.muchomonitor.com /accounts/edit/{id}
app_monitor_accounts_new ANY ANY dashboard.muchomonitor.com /accounts/new
app_monitor_accounts_delete ANY ANY dashboard.muchomonitor.com /accounts/delete
app_monitor_billing ANY ANY dashboard.muchomonitor.com /billing
app_monitor_billing_all ANY ANY dashboard.muchomonitor.com /billing/all
app_monitor_billing_invoice ANY ANY dashboard.muchomonitor.com /invoice/{key}/{id}
app_monitor_notifications ANY ANY dashboard.muchomonitor.com /notifications
app_monitor_ipn ANY ANY dashboard.muchomonitor.com /ipn
app_monitor_ipn_stripe ANY ANY dashboard.muchomonitor.com /ipn-stripe
fos_user_security_login ANY ANY dashboard.muchomonitor.com /login
fos_user_security_check POST ANY dashboard.muchomonitor.com /login_check
fos_user_security_logout ANY ANY dashboard.muchomonitor.com /logout
fos_user_resetting_request GET ANY dashboard.muchomonitor.com /login/request
fos_user_resetting_send_email POST ANY dashboard.muchomonitor.com /login/send-email
fos_user_resetting_check_email GET ANY dashboard.muchomonitor.com /login/check-email
fos_user_resetting_reset GET|POST ANY dashboard.muchomonitor.com /login/reset/{token}

尽管上面的命令说的是,进入dashboard.muchomonitor.com/login 显示它不起作用。

编辑:
我已经解决了这个问题。在路由.yml
fos_user_security_login:
pattern: /login/
defaults: { _controller: FOSUserBundle:Security:login }

fos_user_security_check:
pattern: /login_check
defaults: { _controller: FOSUserBundle:Security:check }

fos_user_security_logout:
pattern: /logout
defaults: { _controller: FOSUserBundle:Security:logout }

最佳答案

首先......您的登录网址应该(根据您当前的配置)是 /login而不是 /login/ .

网址 /login / (带有斜杠)确实 不是 存在于您的路由配置中。

正确的方法是让 路由器使用路由名称生成 url,而不是对该 url 进行硬编码 /login到您的任何模板中。

{{ path('fos_user_security_login') }}

进一步...请阅读 my answer here这解释了 <firewall>.login.check_path作品。

user 更改主防火墙的提供商至 fos_userbundle .
login_path 下没有其他提供程序配置.
firewalls:
main:
pattern: ^/
provider: fos_userbundle
form_login:
csrf_provider: form.csrf_provider
login_path: fos_user_security_login
check_path: fos_user_security_check
default_target_path: app_website_index
logout:
path: fos_user_security_logout
target: fos_user_security_login
anonymous: true

此外,您已在防火墙配置中两次声明注销(第二次首先覆盖):
firewalls:
# ...
logout: true
# ...
logout:
path: /logout
target: /login

关于symfony - fosuserbundle 没有找到 "GET/login/"的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19751181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com