2016-04-29 6 views
0

Ich versuche, eine Ruhe-API mit yii2 Basisvorlage zu hosten. Meine Anwendungsstruktur ist dies:Wie yii2 REST-API in Shared Host?

+ web 
    +.htaccess 
    +index.php 
+ config 
+ controllers 
... 
+ api 
    + config 
    + modules 
    + v1 
     + controllers 
    .htaccess 
    index.php 

Ich bin Bit Neuling in Host-Prozess, so: Wo soll ich das api Verzeichnis setzen? öffentliches_html? Oder sollte ich diese Struktur verlassen und die Berechtigungen ändern?

Ich denke, das ist die richtige Struktur, aber wenn ich versuche, einige URI zu bekommen, bekomme ich die 404 HTTP-Fehler.

+ public_html(or www, or web) 
     +.htaccess 
     +index.php   
     + api 
     + config 
     + modules 
      + v1 
      + controllers 
     .htaccess 
     index.php 

Jemand hat diese Situation konfrontiert? Vielen Dank!

Antwort

0

Ich habe das nur mit der Yii Advanced Application Template gemacht, aber es sieht ähnlich aus. Leiten Sie Ihre Web-Anrufe in den api-Ordner, wo api/index.php Ihren Anruf behandelt. In der Regel eignet sich eine API-Subdomäne wie api.yourdomain.com für diese API-Aufrufe.

Der externe Link zu Ihrer api dann http://api.yourdomain.com/v1/<controller> gegeben werden sollte, dass Ihre api/config/main.php einen Eintrag wie diesen hat (aus meiner erweiterte App eingefügt)

'modules' => [ 
    'v1' => [ 
     'basePath' => '@app/modules/v1', 
     'class' => 'api\modules\v1\Module' 
    ] 
], 
+0

Können Sie Ihre Ordnerstruktur hinterlassen? Ihre @ App verweist auf App-Hauptordner oder API-Ordner? –