gpt4 book ai didi

Nginx 将目录作为别名提供服务

转载 作者:行者123 更新时间:2023-12-04 15:47:30 25 4
gpt4 key购买 nike

我正在尝试使用 ResourceSpace 作为 Nginx 上的别名。页面脚本加载良好,但无法加载静态文件。访问子目录会报错 undefined index
eximmanger 加载所有脚本和静态文件,而资源空间无法加载静态文件,只加载脚本

这是我的配置

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;

最佳答案

我发现问题根本与nginx无关,而是与ResourceSpace $baseurl有关。指示。在指令中我混淆了 $baseurl = 'http://resourcespace.myserver.com';$baseurl = 'http://myserver.com/resourcespace'; .因此,如果您遇到类似问题,请注意这一点。

关于Nginx 将目录作为别名提供服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8300022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com