请告诉我默认文件中的 DocumentRoot 和 Directory 之间的区别是什么 apache2 中的默认文件有三个块
DocumentRoot /var/www in me server /sda1/htdocs
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www> in my server sda1/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
我可以只使用 sda1/htdocs 目录中的这两个吗
DocumentRoot /sda1/htdocs
<Directory /sda1/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
非常感谢
答案1
以下是官方的摘录Apache 文档:
如果多个(非正则表达式)目录部分与包含文档的目录(或其父级之一)匹配,则指令将按照最短匹配的顺序应用,并与 .htaccess 文件中的指令交错。例如,
<Directory /> AllowOverride None </Directory> <Directory /home> AllowOverride FileInfo </Directory>
访问文档 /home/web/dir/doc.html 的步骤如下:
Apply directive AllowOverride None (disabling .htaccess files). Apply directive AllowOverride FileInfo (for directory /home). Apply any FileInfo directives in /home/.htaccess, /home/web/.htaccess and /home/web/dir/.htaccess in that order.
ieDirectory /
指令为所有其他目录定义“默认值”,每个特定目录都可以覆盖该默认值
在您的情况下,除非您有其他目录指令,否则您显示的两个版本应该是等效的。