title: Nginx yii2 configuration
body: <p><strong>Hi there!</strong>  </p>
  
  <p>I'am trying to configure Nginx for 2 yii projects, <strong>frontend</strong> for users and <strong>admin</strong> for admins with only one domain (no sub domain). I need to configure it in a way such that <strong>mydomain.com</strong> should refer to <strong>frontend</strong> and <strong>mydomain.com/admin</strong> to <strong>admin</strong>. The problem is I'am being able to configure only one of them at a time, meaning I can use frontend or admin not both of them.  </p>
  
  <p><em>What I have tried</em>  </p>
  
  <p><strong>front.conf</strong></p>
  
  <pre><code>server {
          listen 80;
          server_name api.maim.experiments.uz;
          return 301 https://$server_name$request_uri;
  }
  
  
  server {
      charset utf-8;
      client_max_body_size 128M;
  
      listen 443 ssl;
  
      ssl_certificate_key privkey.pem;
      ssl_certificate     fullchain.pem;
  
      ssl_protocols TLSv1.2;
  
      set $host_path "/home/itschool/inha_dev/frontend";   
  
      server_name  api.maim.experiments.uz;
      root        $host_path/web;
  
      set $yii_bootstrap "index.php";
  
      access_log  /var/log/nginx/itschool-access.log;
      error_log   /var/log/nginx/itschool-error.log;
  
      location / {
          index index.html $yii_bootstrap;
          try_files $uri $uri/ /index.php;
      }
  
      location ~ ^/(protected|framework|themes/\w+/views) {
          deny  all;
      }
  
      location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
          try_files $uri =404;
      }
  
      location ~ \.php$ {
  
          set $fsn /index.php;
             if (-f $document_root$fastcgi_script_name){
                 set $fsn $fastcgi_script_name;
          }
  
          fastcgi_pass 127.0.0.1:9002;
  
          include fastcgi_params;
  
          fastcgi_param SCRIPT_FILENAME $document_root$fsn;
      }
  
      location ~ /\.(ht|svn|git) {
          deny all;
      }
  
      location ~* /\. {
          deny all;
          access_log off;
          log_not_found off;
      }
  }
  </code></pre>
  
  <p><strong>back.conf</strong></p>
  
  <pre><code>server {
          listen 80;
          server_name api.maim.experiments.uz;
          return 301 https://$server_name$request_uri;
  }
  
  
  server {
      charset utf-8;
      client_max_body_size 128M;
  
      listen 443 ssl;
  
      ssl_certificate_key privkey.pem;
      ssl_certificate     fullchain.pem;
  
      ssl_protocols TLSv1.2;
  
      set $host_path "/home/itschool/inha_dev/backend";   
  
      server_name  api.maim.experiments.uz;
      root        $host_path/web;
  
      set $yii_bootstrap "index.php";
  
      access_log  /var/log/nginx/itschool-access.log;
      error_log   /var/log/nginx/itschool-error.log;
  
  
      location ^~ /admin {
          alias /home/itschool/inha_dev/backend/web;
  
          if (!-e $request_filename) { rewrite ^ /admin/index.php last; }
  
          location ~ \.php$ {
              if (!-f $request_filename) { return 404; }
  
              include        fastcgi_params;
              fastcgi_param  SCRIPT_FILENAME $request_filename;
              fastcgi_pass   127.0.0.1:9002;
          }
      }
  
      location ~ /\.(ht|svn|git) {
          deny all;
      }
  
      location ~* /\. {
          deny all;
          access_log off;
          log_not_found off;
      }
  }
  </code></pre>
  
  <p>I found some questions with answers but they didn't work for me, please help. </p>