Yii2 Using pretty URLs (Yii2 中使用漂亮的urls) from ----- Yii2 By Example
来源:互联网 发布:系统端口设置在哪里 编辑:程序博客网 时间:2024/06/05 02:53
SEO的URL格式是非常重要的。人们不注意url(一些浏览器甚至不显示它们),但是有些搜索引擎让URL和页面文本之间对应。
我们已经使用了这种类型的URL index.php?r=site/index或index.php?r=site/about,其中r表示要遵循的参数路径。现在,我们来看看如何在site/about上改变这些格式,这样更容易让搜索引擎读懂也更有用。
为了使用优雅的url,我们需要配置Yii2来处理它们,这样就可以完成了几分钟。
在Linux环境中,以“.”开头的文件名, 表示这个文件是隐藏的。
.htaccess 文件的内容和yii1 是相同的:
RewriteEngine on# If a directory or a file exists, use it directlyRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-d# Otherwise forward it to index.phpRewriteRule . web/index.php
如果你的app root(网址访问的目录) 目录是 /var/www/vhosts/yiiapp/basic ,我们将 .htaccess 放在 /var/www/vhosts/yiiapp/basic 目录下面。
web服务器的第一行开启RewriteEngine;
然后,在第二和第三行,脚本是检查请求是否有不存在的文件或文件夹;
最后是修改请求重定向到web/index.php。
有了这些修改,所有不存在的文件或文件夹的请求都将被重写web/index.php。
如果我们可以访问这种级别的Apache配置,我们还可以在Apache配置中配置重写规则,而不是在 .htaccess 中。
如果 .htaccess配置配置完成后,检查(apache中)AllowOverride是否设置为所有的如下:
<Directory /var/www/path/to/folder>AllowOverride All</Directory>
现在要做的最后一件事是配置Yii2,用来处理一个优雅的URL
让我们打开config / web.php并将这些内容添加到组件属性中:
'urlManager' => [ 'enablePrettyUrl' => true,],
添加enablePrettyUrl属性,以上我们已经配置了urlManager来启用该属性漂亮的URL,切换了漂亮的URL格式。
之前的URL index.php?r=site/index 变成了 /index.php/site/index
index.php?r=site/about 也变成了 /index.php/site/about
使用enablePrettyUrl属性,我们还可以用index.php做前缀。我们可以选择是否保留它;但是,要限制URL的长度,建议删除它。
我们可以用以下配置删除它
'urlManager' => ['enablePrettyUrl' => true,'showScriptName' => false,],
现在我们在浏览器中敲 http://hostname/basic/web/site/index 去访问Yii2应用的欢迎页面 , 然后检查检查其他的链接是否是优雅的urls
最后,还有urlManager组件的另一个属性,用于启用URL解析,只有基于给定的URL规则用enableStrictParsing声明。
如果这个属性是true,urlManager中定义的规则将被执行,如果没有匹配的URL请求将显示一个错误。
- Yii2 Using pretty URLs (Yii2 中使用漂亮的urls) from ----- Yii2 By Example
- Yii2 yii2-imagine的使用
- YII2
- YII2
- Yii2
- yii2
- Yii2
- Yii2中request的使用
- Yii2中request的使用
- yii2 console的使用
- yii2-user的使用
- yii2 log的使用
- yii2 memcached 的使用
- yii2使用
- 关于Yii2中redis扩展的使用
- Yii2中使用自定义的数据库
- yii2中GridView使用进阶
- Yii2中如何使用CodeCeption
- 嵌入式系统学习——S3C2451点亮LED
- C++内联函数inline
- Vue-Router2.0教程
- funCode课程实训(C++ )
- 微信自定义分享在pc正常手机端不正常问题
- Yii2 Using pretty URLs (Yii2 中使用漂亮的urls) from ----- Yii2 By Example
- Python 主成分分析PCA
- acm56 java 阶乘因式分解
- 170707 逆向-南邮CTF逆向(WxyVM1)
- Excel列值(不限字符串数字)转换Vaules()拼凑表
- Spark基本术语
- Linux简介和系统安装-
- HTML学习笔记(Day2)
- OpenStack多节点安装(四):Compute