我正在阅读nginx初学者的教程,在他们有的服务静态内容部分
http {
server {
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我添加一个http块时,我得到了错误
[emerg]这里不允许"http"指令......
当我删除http块并将conf文件更改为此文件时,它可以正常工作:
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/example.com/html;
index index.html index.htm;
# make site accessible from http://localhost/
server_name localhost
location / {
try_files $uri $uri/ /index.html;
}
Run Code Online (Sandbox Code Playgroud)
我怀疑我错过了一些简单的东西,但为什么他们使用http来提供静态文件呢?
Ian*_*Ian 29
你做得很好.我猜您正在编辑/ etc/nginx/sites-enabled/default(或/ etc/nginx/sites-available/default中的链接文件).
这是标准的nginx设置.它配置了/etc/nginx/nginx.conf,其中包含http {}语句.这反过来包含一个"include/etc/nginx/sites-enabled/*"行,包含上面的文件,其中包含server {}子句.
请注意,如果您使用的是创建备份文件的编辑器,则必须修改include语句以排除备份文件,否则您将收到一些"有趣"的错误!我的路线是
include /etc/nginx/sites-enabled/*[a-zA-Z]
Run Code Online (Sandbox Code Playgroud)
它不会获取以代字号结尾的备份文件.因人而异.
| 归档时间: |
|
| 查看次数: |
9812 次 |
| 最近记录: |