Pep*_*dez 4 php apache .htaccess yii-components yii2
好吧,PHP时代.
我的客户希望我使用Yii2作为他的项目的框架.
我把它搞定了.没问题.我通过作曲家使用了高级模板.
将我的Web根目录设置为/ frontend/web等.
现在,我想使用这种网址格式
website.com/messages/或website.com/messages/tom ...等
现在的方式是设置显示website.com/index.php?r=messages/index ...
我找到了这个文件......
https://github.com/yiisoft/yii2/blob/master/docs/guide/url.md
但我似乎无法直截了当.
这是我的步骤......
我配置我的apache服务器指向/ usr/www/payroll/frontend/web /
我在我的web文件夹中添加了一个包含此内容的.htaccess文件.
RewriteEngine on
# If a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward it to index.php
RewriteRule . index.php
Run Code Online (Sandbox Code Playgroud)
我还在路线中添加了组件'urlManager'.它似乎捕获请求并修改它.
'components'=>[
'urlManager' => [
'class' => 'yii\web\UrlManager',
'enablePrettyUrl' => true,
'showScriptName' => 'false'
],
],
Run Code Online (Sandbox Code Playgroud)
例如,如果我输入website.com,您可以看到它将url/site/index添加到url.(如果没有激活url组件,只需添加/index.php?site/index)
所以,显然有一个修改到url(通过UrlManager),但我得到404错误
我这里的想法已经不多了.我是Php,Apache和Yii2的新手.任何帮助,非常感谢.
谢谢
d.r*_*aev 16
要使漂亮的URL在Yii 2.0上运行,你需要做两件事:
1:编辑/frontend/config/main.php(或你的情况下适当的主配置)并添加:
'components'=>[
'urlManager' => [
'class' => 'yii\web\UrlManager',
'enablePrettyUrl' => true,
'showScriptName' => false,
],
],
Run Code Online (Sandbox Code Playgroud)
2:在您的WEB ROOT文件夹中添加.htaccess文件.在yii 2.0 advanced中,这不是项目根目录,而是:
/frontend/web
.htaccess示例:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13630 次 |
| 最近记录: |