2011-11-28 20 views
6

Sto cercando di utilizzare ResourceSpace come alias su Nginx. Gli script di pagina vengono caricati correttamente ma i file statici non vengono caricati. L'accesso a sottodirectory dà un errore di undefined indexNginx che serve una directory come alias

carichi eximmanger con tutti gli script più file statici, mentre resourcespace non riesce a caricare i file statici, caricare solo gli script

Questo è il mio config

server { 
    listen 80; 
    server_name myserver.com www.myserver.com; 
    server_name_in_redirect off; 

    access_log /var/log/nginx/myserver.access_log main; 
    error_log /var/log/nginx/myserver.error_log info; 

    location /resourcespace { 
     alias /var/www/html/ResourceSpace/; 

    } 


    location /eximmanager { 
     alias /var/www/html/exim4u/exim4u/; 

    } 

    location /100/ { 
      rewrite^http://100.myserver permanent; 

    } 




    location ~ ^/eximmanger/(.+\.*)$ { 
     alias /var/www/html/exim4u/exim4u/$1; 
     fastcgi_pass unix:/tmp/php.socket; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $request_filename; 

     # From fastcgi_params 
fastcgi_param QUERY_STRING  $query_string; 
fastcgi_param REQUEST_METHOD  $request_method; 
fastcgi_param CONTENT_TYPE  $content_type; 
fastcgi_param CONTENT_LENGTH  $content_length; 
fastcgi_param SCRIPT_NAME  $fastcgi_script_name; 
fastcgi_param REQUEST_URI  $request_uri; 
fastcgi_param DOCUMENT_URI  $document_uri; 
fastcgi_param DOCUMENT_ROOT  /var/www/html/exim4u/exim4u; # <-- Changed 
fastcgi_param SERVER_PROTOCOL $server_protocol; 
fastcgi_param GATEWAY_INTERFACE CGI/1.1; 
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; 
fastcgi_param REMOTE_ADDR  $remote_addr; 
fastcgi_param REMOTE_PORT  $remote_port; 
fastcgi_param SERVER_ADDR  $server_addr; 
fastcgi_param SERVER_PORT  $server_port; 
fastcgi_param SERVER_NAME  $server_name; 
fastcgi_param REDIRECT_STATUS 200; 
    } 


    location ~ ^/resourcespace/(.+\.*)$ { 
     alias /var/www/html/ResourceSpace/$1; 
     fastcgi_pass unix:/tmp/php.socket; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $request_filename; 

     # From fastcgi_params 
fastcgi_param QUERY_STRING  $query_string; 
fastcgi_param REQUEST_METHOD  $request_method; 
fastcgi_param CONTENT_TYPE  $content_type; 
fastcgi_param CONTENT_LENGTH  $content_length; 
fastcgi_param SCRIPT_NAME  $fastcgi_script_name; 
fastcgi_param REQUEST_URI  $request_uri; 
fastcgi_param DOCUMENT_URI  $document_uri; 
fastcgi_param DOCUMENT_ROOT  /var/www/html/ResourceSpace; # <-- Changed 
fastcgi_param SERVER_PROTOCOL $server_protocol; 
fastcgi_param GATEWAY_INTERFACE CGI/1.1; 
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; 
fastcgi_param REMOTE_ADDR  $remote_addr; 
fastcgi_param REMOTE_PORT  $remote_port; 
fastcgi_param SERVER_ADDR  $server_addr; 
fastcgi_param SERVER_PORT  $server_port; 
fastcgi_param SERVER_NAME  $server_name; 
fastcgi_param REDIRECT_STATUS 200; 
    } 


    root /var/www/html/myserver; 
    index index.php; 
    # Support Clean (aka Search Engine Friendly) URLs 
    location/{ 
      try_files $uri $uri/ /index.php?q=$request_uri; 
    } 

    index index.php index.html index.htm default.html default.htm; 
    # deny running scripts inside writable directories 
    location ~* /(images|cache|media|logs|tmp)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ { 
      return 403; 
      error_page 403 /403_error.html; 
    } 



    location ~ .*.php$ { 
     #include /etc/nginx/fastcgi_params; 
     fastcgi_pass unix:/tmp/php.socket; 
     fastcgi_index index.php; 
     include fastcgi_params; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 


    } 

    # caching of files 
    location ~* \.(ico|pdf|flv)$ { 
      expires 1y; 
    } 

    location ~* \.(js|css|png|jpg|jpeg|gif|swf|xml|txt)$ { 
      expires 14d; 

risposta

2

ho scoperto che il problema non era affatto collegato a nginx, ma alla direttiva $baseurl ResourceSpace. Nella direttiva avevo mescolato $baseurl = 'http://resourcespace.myserver.com'; e $baseurl = 'http://myserver.com/resourcespace';. Quindi stai attento a questo se hai problemi simili.

Problemi correlati