我想在我的yii2 rest api上使用乾淨的URL。yii2 rest api url rewriting(隱藏目錄)
我對我的前端應用程序有乾淨的網址,但我無法爲我的yii2 rest api應用程序創建乾淨的網址。
我按照教程創建了其餘的api(Yii2: RESTful api: tutorial)。其餘的api使用模塊進行版本控制。
已創建兩個.htaccess文件。 一個文件在我的根目錄中,另一個在我的「api/web」目錄中。
根.htaccess文件
RewriteEngine on
# prevent directory listings
Options -Indexes
IndexIgnore */*
# follow symbolic links
Options FollowSymlinks
RewriteCond %{HTTP_HOST} ^api.localhost [NC]
RewriteRule ^(.*)$ api/web/$1 [L,PT]
'API /網絡' .htaccess文件
RewriteEngine on
# If a directory or a file exists, use the request directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward the request to index.php
RewriteRule ^(.*)\?*$ index.php?r=$1 [L,QSA]
瀏覽到 'http://api.localhost.com/v1/music' 給出了一個404頁沒有發現錯誤。
雖然 'http://api.localhost.com/api/web/v1/music' 返回結果
(我想隱藏 'API /網絡/' 在我的網址)
謝謝!它正在工作! 你能提供更多關於'baseUrl'的信息嗎? 該文檔說:'返回該應用程序的相對URL。' http://www.yiiframework.com/doc-2.0/yii-web-request.html#$baseUrl-detail – brouckaertd