问题标签 [front-controller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
712 浏览

symfony1 - 为什么我的 Symfony 前端控制器不起作用?

我有这个:

我用相同的代码声明:

对于模块,我有:

如果我打电话: http://localhost/myapp_dev.php/login/ 它可以工作。对于http://localhost/ 它可以工作。并且索引模板中的 any 链接正确指向http://localhost/module/action。例如http://localhost/login/ (不是http://localhost/myapp_dev.php/login,这很好)但是如果我调用http://localhost/login/ 它不起作用。并返回 404。

出了什么问题?我应该设置什么?

0 投票
2 回答
968 浏览

php - 没有单例的 PHP 前端控制器实现:概念问题

我有一个关于 php 中的前端控制器实现的“概念”问题。

我见过的大多数前端控制器都是用单例实现的,我不是单例模式的忠实粉丝,我创建了一个容器,它有一个静态属性,将存储一个前端控制器的 unic 实例。

使用单例,我必须将初始化代码放在构造函数(或构造函数调用的方法)中:

使用容器,我可以将配置放在 FrontController 之外,这是我的目标,我仍然有一种简单的方法来检索 FrontController。

这段代码对我来说看起来更干净,我可以在不关心父构造函数的情况下获得干净的子类。

这在“引导”时是完全相同的,但实际上与我之前的实现不同的是,现在我可以在应用程序的任何位置(在 DAO 内或在操作内)创建 FrontController,因为构造函数不再是私有/受保护的.

我的问题是: 让我的课程的用户可以在应用程序的任何位置创建 FrontController 实例是一种“坏习惯”吗?我会编写文档并将容器与其他类一起交付,但我仍然想知道是否应该防止奇怪的用途。

0 投票
1 回答
1456 浏览

.htaccess - .htaccess 前端控制器模组重写麻烦

我知道这应该很简单,但我很难为我的前端控制器编写 .htaccess 规则。

/themes/ 文件夹包含我所有的 css/js/images 等,所以我不希望它们通过我的控制器

.htaccess 文件位于 /myadminarea/ 文件夹的根目录中。

站点的根目录(在 '/' 上的 '/myadminarea' 下面没有 .htacess 文件)

在前端控制器中,我查看 URL,然后直接包含文件 - 但是我想对我接受的 Urls 非常宽容..

如果 url 是针对特定文件的,我希望它通过前端控制器

如果 url 用于目录(尾部正斜杠),我想假设他们正在该文件夹中寻找 index.php

以下规则适用于这样的网址

但落在这样的网址上 -

包含文件名(它不使用前端控制器,而只是直接加载文件)-我知道 !-f 排除了文件的重写规则,但我已经尝试了我能想到的所有组合以及下面的最少适用于没有文件名的 url。当我尝试路由每个请求(除了那些到主题文件夹的请求)时,我收到服务器配置错误(500)

这是我的规则

编辑:

添加了精简的前控制器

0 投票
1 回答
858 浏览

java - 如何利用 Spring MVC 实现前端控制器但不使用控制器

这篇文章的标题可能会令人困惑。我会尽力澄清它。我使用 Spring MVC 开始了一个项目,它工作正常没有问题。之后我意识到我有点矫枉过正,发现我需要一个前端控制器调度程序,因为所有想要的只是没有扩展的漂亮 url。

因此,与其实现一个全新的字体控制器,我更愿意利用现有的 Spring MVC 设置。这是一个控制器的例子

如您所见,返回字符串是指示基于resourceviewresolver的视图的字符串

现在我不想使用控制器,但需要一种机制将请求映射到物理页面。我想知道这是否可能。

我怎样才能做到这一点?我应该简单地创建另一个调度程序?

感谢您阅读本文并提供帮助。

0 投票
1 回答
944 浏览

zend-framework - 执行控制动作后如何运行动作(在所有页面中)

我有一个前端控制器插件。

它适用于 dispatcherloodstartup 方法,但 postdispatcher 不能调用动作!

怎么了?

这是我的插件:

这是我的引导代码:

如果我必须使用stackpush,哪个数字有用?

0 投票
1 回答
92 浏览

java - WEB-INF中的页面访问网页文件夹中的图像是否有任何问题

您好,我正在使用 spring 3.0.5 实现前端控制器模式的 j2ee Web 应用程序,它的调度程序 servlet 没有使用控制器

使用 ViewResolver。页面位于 WEB-INF/views 中,图像位于 /public/images 中。即使指定了宽度和高度,似乎也没有显示图像。

我想知道有什么我忽略了或者我应该知道和做的事情吗?感谢您阅读本文。

0 投票
2 回答
2805 浏览

apache - 如何使用我的前端控制器配置 tomcat 的 web.xml

我为我的 Java EE 应用程序编写了一个简单的前端控制器。此控制器拦截所有 url 以将它们重定向到正确类中的相应方法。

典型的 url 如下所示:http://domain.tld/appName/Controller/method

我目前面临 3 个关于 tomcat 的问题:

  1. 如果我尝试访问我的基本 url,http://domain.tld/appName/(带有或不带有结尾斜杠),我的前端控制器不会被调用并且我有一个 404。
  2. 如果我尝试访问这样的 url:domain.tld/appName/Controller/method/(备注结束斜杠)与第 1 点相同。但没有结束斜杠它可以正常工作。
  3. 最后,由于我的所有请求都路由到我的前端控制器,我必须在我的 web.xml 中定义所有要提供给默认 servlet 的静态文件。一个较少约束和丑陋的解决方案会很好。

这是我的 web.xml:

0 投票
0 回答
306 浏览

.htaccess - htaccess 重定向优先于 htaccess 基本身份验证

我有以下 htaccess 将前端控制器命令重定向到给定文件....

它位于域的根目录并且运行良好,但是我在 /admin/help/ 有一个受密码保护的目录,其中包含以下 htaccess ...

问题是我无法在浏览器中打开 /admin/help/,它只是重写 index.php,即使 /admin/help/ 是服务器上的真实文件夹。如果我从 /admin/help/ 中删除 .htaccess,该文件夹会在浏览器中按预期显示,所以我认为我在第二个 .htaccess 文件中遗漏了一些东西,但是我不知道它是什么,所以任何建议都是非常感激?

谢谢

0 投票
1 回答
413 浏览

regex - Mod Rewrite Regex - 匹配包含 A 但不包含 B 的 url

我正在尝试通过前端控制器发送请求的页面。

我需要匹配以下网址

但我在 /admin 子文件夹中也有一些我不想匹配的资产

我已经编写了以下规则(在站点根目录中的 .htaccess 内,适用于所有 5 个示例 URL。我如何让它只匹配前两个?)

我可以看到两种方法(我想知道如何使用文件夹“assets”和“xml”作为排除项并通过设置扩展名)

0 投票
1 回答
757 浏览

zend-framework - 前端控制器未找到 application.ini 中定义的控制器插件

我在 application.ini 目录中定义了一个插件,例如

resources.frontController.plugins.acl = "CMS_Controller_Plugin_Acl"

命名空间CMS_设置为在 bootstrap.php 中自动加载

但是,当我启动程序时,我收到了这个错误。