2015-05-11 3 views
0

У меня есть два приложения ... wordpress и WHMCS (приложение для выставления счетов)Как запустить два автономных приложения в одном домене?

example.com - wordpress.

example.com/portal be WHMCS.

На Nginx сервера здесь, как у меня есть папки

/example.com 
|_ /wordpress 
|_ /whmcs 

корня WordPress, но когда кто-то идет/портал Я хочу корневой быть/WHMCS вместо этого.

Я пробовал как корень, так и псевдоним. Я либо запрещаю 404, либо 403.

Here is my current example.conf file 

    server { 
     listen 80; 
     server_name example.com www.example.com; 
     return 301 https://example.com$request_uri; 
    } 

    server { 
     listen 80; 
     listen 443 ssl; 
     server_name example.com; 
     ssl_certificate /etc/nginx/ssl.crt; 
     ssl_certificate_key /etc/nginx/ssl.key; 
     ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
     ssl_ciphers 'AES128+EECDH:AES128+EDH'; 
     ssl_prefer_server_ciphers on; 
     ssl_session_cache shared:SSL:10m; 
     root /usr/share/nginx/example/wordpress; 

    location/{ 
     try_files $uri $uri/ /index.php?$query_string; 
    } 

    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include  fastcgi_params; 
    } 

    location ^~ /portal/index.php { 
     autoindex on; 
     alias /usr/share/nginx/example/portal; 
    } 
    } 

ответ

0

Решение не для совместного использования местоположения php.

server { 
     listen 80; 
     server_name example.com; 
     root /usr/share/nginx/example; 

    location/{ 
    root /usr/share/nginx/example/wordpress; 
    try_files $uri $uri/ /index.php?$query_string; 
    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include fastcgi_params; } 
     } 

    location /portal { 
     error_page 404 = @whmcs; } 

    location @whmcs { 
     rewrite ^(.*)$ /portal/index.php last; 
     root /usr/share/nginx/example/portal; 
     try_files $uri $uri/ /index.php?$query_string; } 

    location ~ \.php$ { 
     try_files $uri =404; 
     fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include fastcgi_params; } 
     }