Apache2别名不在Ubuntu中工作?

时间:2012-11-02 04:20:46

标签: apache2 ubuntu-12.04

我刚刚在Ubuntu 12.04中设置了apache / php / mysql,我已经为我的虚拟目录创建了一个Alias,这是我的/ etc / apache2 / sites-enabled / 000-默认文件:

Alias /demo/ "/home/czetsuya/projects/eclipse/eclipse-php/demo-portfolio"
<Directory "/home/czetsuya/projects/eclipse/eclipse-php/demo-portfolio">
    DirectoryIndex index.php
    Options Indexes MultiViews FollowSymLinks
    AllowOverride All
    Order deny,allow
    Deny from all
    Allow from all
</Directory>

请注意,我已经将chown和chmod应用于:/ home / czetsuya / projects / eclipse / eclipse-php / demo-portfolio

chown www-data:www-data /home/czetsuya/projects/eclipse/eclipse-php/demo-portfolio -R
chmow 777 /home/czetsuya/projects/eclipse/eclipse-php/demo-portfolio -R

但是当我访问:_http:// localhost / demo时,我收到了404 Not found错误。看看/var/log/apache2/error.log我发现它仍然指向/ var / www / demo:

File does not exist: /var/www/demo

知道为什么Alias被忽略了吗?

请注意,我已经重新启动并重新加载apache2。并且还启用了重写。

谢谢,
czetsuya

3 个答案:

答案 0 :(得分:9)

您的问题最有可能通过mod_alias manual;

解决
  

请注意,如果在URL路径中包含尾随/,则表示服务器   将需要尾随/以扩展别名。也就是说,如果   你用

     

Alias / icons / / usr / local / apache / icons /然后不会是URL /图标   别名,因为缺少尾随/.

尝试将别名中的/demo/更改为/demo,它应该会更好。

答案 1 :(得分:2)

必须在/etc/apache2/mods-enabled/alias.conf文件中配置Apache 2.4中的所有别名。

它们在虚拟主机文件中被忽略。

答案 2 :(得分:-1)

小伙伴关注这些SLASHES的确切语法 它不能在目录名的末尾,也不能在别名的末尾,这花费了我不可思议的时间来找到这个错误,非常好的工作人们来自apache! 合适的方式 : 别名“/ docs”“/ var / web” 错误道: 别名“/ docs /”“/ var / web /”