windows+nginx配置站点目录发生500的一个问题

举报
仙士可 发表于 2023/06/14 17:03:39 2023/06/14
【摘要】 用phpstudy配置一个站点的时候,发现一直报错500,后来查看了下error.log.报错如下:而phpstudy站点配置如下:server { listen 80; server_name www.cn ; root "F:\work\www\test_for_windows"; location / { ...

用phpstudy配置一个站点的时候,发现一直报错500,后来查看了下error.log.报错如下:

而phpstudy站点配置如下:

server {
        listen       80;
        server_name  www.cn ;
        root   "F:\work\www\test_for_windows";
        location / {
            index  index.html index.htm index.php;
            #autoindex  on;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}
复制

后来才发现问题在于:

windows的目录分隔符默认是"\" 

而linux默认是"/" 而\t,\r\n,\r恰好是转义字符

而nginx配置文件是可以转义这些字符的,导致配置出错,出现了500问题

至于解决方法,多加一个\就行了,比如\\t,\\r\\n,\\r

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。