如何从Yii2高级模板中删除/ web /

时间:2015-09-03 08:14:04

标签: rest templates yii2

我正在使用Yii2高级模板following this guide实施RESTful服务。但是,我最终获得了REST服务的以下结构:

http://localhost/MyProject/api/web/v1/user/1应该如此 http://localhost/MyProject/api/v1/user/1

如何从网址路径中删除/web/

4 个答案:

答案 0 :(得分:1)

如果你在.htaccess中使用apache

my_str

答案 1 :(得分:0)

如果您要在自己的服务器上托管它,只需创建一个指向api/web的虚拟主机,您就可以对其进行排序。 这是一个样本

<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName api.websiteurl.com DocumentRoot /var/www/html/app/api/web </VirtualHost>

有了这个,我可以从api.websiteurl.com访问我的api 如果您想从websiteurl.com访问api,那么只需将服务器的文档根目录设置为指向api/web

答案 2 :(得分:0)

You add below code in web.php file...

'components' => [
      'urlManager' => [
             'enablePrettyUrl' => true,
             'showScriptName' => false,
       ],
 ],


 And Then add one file .htaccess file in web folder..

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php

答案 3 :(得分:0)

我实际上喜欢使用Kartik的Practical AppPractical-A App。它们基于yii2-advanced模板,但有一些变化,比如摆脱/ web目录