我正在运行nginx,并希望在URL https://example.com/myapp
上提供静态应用程序。
我有一个server
块,如下所示:
server {
listen 443 ssl http2;
server_name example.com;
root /var/www/html;
location /myapp/ {
root /home/tri/myapp/dist;
rewrite ^/myapp/?(.*)$ /$1 break;
}
}
我希望通过转到https://example.com/myapp
,它将为index.html
文件提供服务,但事实并非如此。
如果我转到https://example.com/myapp/index.html
,则文件正确投放了。但是,如果我只是转到https://example.com/myapp
,则会在nginx中收到此错误:
2020/03/28 15:17:40 [error] 27905#27905: *11410 open() "/var/www/html/index.html" failed (2: No such file or directory), client: 73.119.123.242, server: example.com, request: "GET /myapp/ HTTP/2.0", host: "example.com"
因此由于某种原因,它会退回到默认的root
指令。
我在做什么错了?
答案 0 :(得分:1)
您可以使用此配置
Traceback (most recent call last):
File "D:/My/Path/Python Perfectionnement/analysis/csv.py", line 4, in <module>
import pandas as pd
File "C:\Users\Me\AppData\Local\Continuum\anaconda3\envs\pyperf\lib\site-packages\pandas\__init__.py", line 145, in <module>
from pandas.io.api import (
File "C:\Users\Me\AppData\Local\Continuum\anaconda3\envs\pyperf\lib\site-packages\pandas\io\api.py", line 8, in <module>
from pandas.io.excel import ExcelFile, ExcelWriter, read_excel
File "C:\Users\Me\AppData\Local\Continuum\anaconda3\envs\pyperf\lib\site-packages\pandas\io\excel\__init__.py", line 1, in <module>
from pandas.io.excel._base import ExcelFile, ExcelWriter, read_excel
File "C:\Users\Me\AppData\Local\Continuum\anaconda3\envs\pyperf\lib\site-packages\pandas\io\excel\_base.py", line 9, in <module>
from pandas._libs.parsers import STR_NA_VALUES
File "pandas\_libs\parsers.pyx", line 12, in init pandas._libs.parsers
ImportError: cannot import name QUOTE_MINIMAL
Process finished with exit code 1
答案 1 :(得分:0)
我仍然不确定为什么我的原始配置不起作用,但是由于有了这个答案https://stackoverflow.com/a/10647080/1368032,我转而使用alias
,现在它对我有用(无需重写) :
server {
listen 443 ssl http2;
server_name example.com;
root /var/www/html;
location /myapp/ {
alias /home/tri/myapp/dist/;
}
}
答案 2 :(得分:-1)
您的位置“ / myapp /”在不带“ /”的情况下将与“ / myapp”不匹配-您可能希望调整位置值以使其成为可选值,但我不在可以验证的计算机附近正确的语法。