我注意到默认的站点可用文件(/ etc / apache2 / sites-available / default)包含许多带有各种选项的“目录”标签。
<Directory />
,<Directory /var/www/>
,<Directory "/usr/lib/cgi-bin">
和<Directory "/usr/share/doc/">
我需要其中任何一种,还是可以安全地删除它们?
答案 0 :(得分:23)
不要开始调整默认网站,它只会变得一团糟,你将无法弄清楚指令的作用。
我建议你编写自己的virtual host配置,这样你实际上就知道你的网站做了什么。这是一个简单的骨骼配置,可以帮助您入门。
<VirtualHost *:80>
ServerName www.mywebsite.com
DocumentRoot /home/www/public_html/
<Directory /home/www/public_html/>
Options None
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
只需将其放入sites-available
然后运行a2ensite mywebsite
(mywebsite
作为vhost配置的文件名),然后使用/etc/init.d/apache2 reload
重新加载服务器配置。
我使用的所有指令的解释都可以在apache documentation中找到(我假设您运行的是2.2版本)。
哦,当然,如果a2dissite default
存在冲突,您需要停用默认网站(ServerName
)。
答案 1 :(得分:1)
我不能说得更好。我一直在努力解决这个问题,这是正确的。您也可以使用service apache2 restart
和service apache2 reload
代替/etc/init.d/apache2 reload
。它做同样的事情,可能更容易记住,虽然我认为一些设置需要上述。
毫无疑问,Apache是一个棘手的设置。我刚刚开始使用Ubuntu 13.04,他们有一个非常棒的手册,可以帮助你完成整个设置,不同的选项等等,但同样,上面的内容也是如此。
祝你好运,坚持下去。它将变得更容易并开始有意义。
手册在这里:https://help.ubuntu.com/13.04/serverguide/serverguide.pdf
更新:这是我使用的另一个。
<VirtualHost xx.xxx.xxx.xx:80>
ServerAdmin admin@your-email.com
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/domain.com/html/drupal
ErrorLog /var/www/domain.com/logs/error.log
CustomLog /var/www/domain.com/logs/access.log combined
</VirtualHost>