问题标签 [yii-url-manager]
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.
php - 除了带有 id 的 url 之外,YII url 管理工作
我已经在我的 YII 项目中启用了 url 管理。大多数链接都可以正常工作,但是我有一些链接具有从数据库中获取的 id,这些链接无法正常工作。
localhost/project/site/contact <--此链接有效
localhost/project/site/page&view=contentpage&id=1 <-- 这个不是。
我怎样才能让这个链接表现得像一个对 seo 友好的 url?
这些是我在 main.php 文件中的 urlmanager 中的当前规则。
非常感谢你!
编辑-我现在已将 url 更改为 ? 代替 &。该链接现在可以使用,但是我如何使它对 seo 友好,有什么想法吗?谢谢!:)
php - Yii 不能更改项目的文件夹名称
我创建了一个名为“ProjectName”的项目。
我想将项目名称更改为“NewProject”
我无法更改项目的文件夹名称。
如果我更改文件夹名称,URL 管理器功能不起作用。
但是我可以通过禁用 /confing/main.php 中的 URLManager 功能并放入index.php 来正常运行?在网址中
我有一个合适的 .htaccess 文件。
我的项目中没有硬代码。
服务器或代码有问题吗?
yii - UrlManager 中的多个 GET 参数
我正在使用 Yii 1.1.14。
我想将
http://website.com/controller/action?param1=value1¶m2=value2
转换
为
http://website.com/value1/value2
如何在 urlManager 中执行此操作?
regex - Yii URL 模式中的 Yii 合并和可选字符串
有没有办法整合以下 Yii URL 模式?怎么说,例如一个部分是可选的。
url - createUrl 未以路径格式创建 URL
我正在尝试在 yii 中以路径格式创建 URL,但它总是以 get 格式创建它。我不明白出了什么问题。
这是main.php
这是控制器
但它总是会导致/services/airlineSearch/roundTripSearch?origin=delhi
问题:- 我怎样才能以路径格式获取它?
url - Yii:控制器 id 和模块为空
编辑:Yii 版本 1.1.14
自调用以来,我正在尝试获取当前模块/控制器/操作并手动构建一个 url
除了路径格式外,它没有像我一样工作。
我为什么需要那个?因为当我点击具有列表视图的 url 时,通过将 CActiveDataProvider 构造函数中的 pagination->route 属性分配给 Yii::app()->urlManager->parseUrl(Yii::app()->request) 将产生以下效果:
- 单击“第 1 页”项目(或在第 2 页时单击“上一个”项目)将重定向到“$url”
- 单击另一个链接将重定向到“$url/page/(pageNumber)”。
但是当 urlFormat 为 PATH 时,我的 $url 将嵌入 GET 参数(如果有)。这是:如果当前我在第 2 页(它也适用于不是第一页的任何页面),则当前 url 将是:
(module)/(controller)/(action)/page/2 (2 或其他)
以及为页面 X 生成的链接(对于 X > 1):
(模块)/(控制器)/(动作)/page/2/page/X
以及为第 1 页生成的链接:
(模块)/(控制器)/(动作)/page/2
这是有问题的,因为我无法返回第 1 页。
所以我尝试了以下方法:通过访问当前控制器对象数据以编程方式生成 [module/]controller/action 路由(否:手动分配 url 不是一个选项):
但是即使当前路由(是的,在我的浏览器 url 中)是 admin/accessLog/list(模块、控制器、操作)并且我的 url 解析规则是这样的:
(是的,管理模块中有一个管理应用程序,客户端应用程序也是如此。但请记住当前 url 以 admin/accessLog/list 开头。这并不意味着它不会出现在其他 url 中:它只是表示我目前正在使用这个 url,所以以它为起点)
$module 为空(应为“admin”),$controller 为空(应为“accessLog”),action 为“list”(预期值)。
我当前安装的模块是(应用程序级):
编辑:我目前安装的模块是:
/管理员/模块:
/客户端/模块:
而且,再一次,我的问题:
假设 $this 是当前控制器是 AccessLogController 的一个实例(在模块 /admin/ 中,而不是通过外部映射),为什么两者:
空空如也?
php - Yii 解析 Urlmanager 链接回数组
我如何访问参数数组,传递给视图中的控制器动作?基本上在应用 SEO 链接之前,我的视图中有规则(简化):
但是在应用 urlManager $_GET 变量后变为空,并且这些规则设置肯定会停止工作。
我只是发现使用一些“魔术”方法可以在 CLinkPager 模块中完成,但不明白如何。
yii - 无论是否从模块调用相同的 URL
如果我使用 Yii::app()->createUrl('user/login') 我将得到结果为 '/user/login'
但是我会在一个模块中使用 Yii::app()->createUrl('user/login') 我会得到 '/module/user/login'
有什么方法可以让我无论从哪里调用 createUrl 都可以“/user/login”?
我正在使用一个返回 url 的通用函数。
php - Yii CMenu 活动项有时设置,有时不设置
我在设置 CMenu 活动项目时遇到问题,有时可以,有时不行。对于我的 CMenu,“items”数组格式为:
项目处于活动状态/rating/index
,但链接类似时不活动/customPages/view/id/3
也许问题是因为链接格式,因为main.php
在urlManager
我有一个规则'Gaismeklu_piemeklesana' => 'customPages/view/id/3',
有人知道如何解决这个问题吗?
谢谢!
.htaccess - 如何为子域配置 yii URL 管理器
也许这个问题已经在某个地方被问过,但我找不到适合我的问题的任何东西。
我正在使用 yii 及其 URL 管理器创建一个网站。在我的本地主机中,URL 管理器运行良好。但是在我将它上传到具有子域的服务器后,问题就出现了。域和子域应该是http://tokoandhika.mauinimauitu.com
.
在我的本地主机中,http://localhost/tokoandhika/catalog/category1
工作正常。它将访问CatalogController.php中的actionIndex 函数。但是如果我访问,它会提示 Internal Server Error (PHP Error 500)。http://tokoandhika.mauinimauitu.com/catalog/category1
可能出了什么问题?我需要编辑 htaccess 文件吗?还是我需要为此添加更多规则?任何有用的建议将不胜感激。
以下是我对 URL 管理器的规则:
这是我的htaccess: