我是新手Yii框架。 我已经在配置文件中注释掉的URL经理,并得到像这样的URL方案:
http://localhost/mysite/index.php/displayAll
我不想在URL中的index.php。 所以我想一个url像这样的一些事情
http://localhost/mysite/displayAll
要做到这一点,我该怎么办。 我没有与URL经理和一些htaccess的,但没有顺利发挥。
请帮忙
我是新手Yii框架。 我已经在配置文件中注释掉的URL经理,并得到像这样的URL方案:
http://localhost/mysite/index.php/displayAll
我不想在URL中的index.php。 所以我想一个url像这样的一些事情
http://localhost/mysite/displayAll
要做到这一点,我该怎么办。 我没有与URL经理和一些htaccess的,但没有顺利发挥。
请帮忙
尝试:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?mysite/(.*)$ /mysite/index.php/$1 [L]
在你的.htaccess你应该有这样的:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
然后,你必须urlManager组件添加到您的主配置文件:
array(
......
'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'rules'=>array(
'pattern1'=>'route1',
'pattern2'=>'route2',
'pattern3'=>'route3',
),
),
),
);
注意“showScriptName” =>假 ,这将隐藏“的index.php”从所生成的URL。
要查找有关的Yii的网址经理都检查了Yii中的文档在这个话题: http://www.yiiframework.com/doc/guide/1.1/en/topics.url
在httpd.conf中查找,
LoadModule rewrite_module modules/mod_rewrite.so
(如果尚未删除从行首删除#)。
OR
In wamp click on wampserver-> Apache -> Apache Modules and enable rewrite_module.
在你的index.php是目录中创建的.htaccess,并粘贴以下代码:
IndexIgnore */*
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
而在保护/配置/ main.php
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName' => false,
'rules' => array(
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
),
),
如果仍然没有得到干净的url,转到虚拟主机配置文件“的httpd的虚拟主机”柜面您正在使用它,在你的配置贴,
<Directory "C:/wamp/www">
AllowOverride All
</Directory>
上IIS 7,IIS 7.5,IIS 8,IIS 8.5,IIS 10
请确保您有安装URL重写模块 。 可以在这里找到: http://www.iis.net/downloads/microsoft/url-rewrite
除去从配置/ main.php或配置/ web.php评论
'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ ], ],
创建web目录基本/网络/ web.config中的新文件,并添加system.webServer
<directoryBrowse enabled="false" /> <rewrite> <rules> <rule name="Hide Yii Index" stopProcessing="true"> <match url="." ignoreCase="false" /> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" /> </conditions> <action type="Rewrite" url="index.php" appendQueryString="true" /> </rule> </rules> </rewrite>
实施例的结果: HTTP://本地主机/基本/网络/站点/接触