Apache站点 - 可用默认和其他

时间:2014-04-09 20:52:38

标签: php apache .htaccess virtualhost

我有一个名为“mydomain.com”的域名

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
        Options -Indexes FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options -Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
....
</VirtualHost>

当我在url中写下以下地址时:

www.mydomain.com/mysubdomain/myfolder

转到网页正常工作。

mysubdomain sites-available如下,名为mysubdomain

<VirtualHost *:80>
    DocumentRoot /var/www/mysubdomain
    ServerName www.mysubdomain.com
        ServerAlias mysubdomain.com

    ErrorLog ${APACHE_LOG_DIR}/error_mysubdomain.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access_mysubdomain.log combined

    <Directory /var/www/mysubdomain>
        Options -Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

当我输入www.mydomain.com/mysubdomain/myfolder时,一切正常 www.mydomain.com/mysubdomain/myfolder/login.php

但是当我写作

http://www.mysubdomain.com/myfolder/login.php

没有按预期工作,因为当我在login.php中包含一个引用时,如../../myfolder不能像我预期的那样进入根文件夹,我该如何修复它?

www.mydomain.com/mysubdomain/myfolder/login.php中,../../myfolder之类的参考文章适用于/var/www/

我希望向用户显示的网址可以是http://www.mysubdomain.com/myfolder/login.php

2 个答案:

答案 0 :(得分:0)

相对URL相对于 URL ,而不是相对于Web服务器上的文件系统(客户端不可见)。

您无法将目录树向上导航到未显示在正在查看的虚拟主机的Web根目录下的文件。

答案 1 :(得分:0)

解决方案很简单:

将站点中的文件mysubdomain更改为

    DocumentRoot / var / www / mysubdomain     ServerName www.mysubdomain.com         ServerAlias mysubdomain.com

ErrorLog ${APACHE_LOG_DIR}/error_mysubdomain.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access_mysubdomain.log combined

Alias /myfolder /var/www/myfolder

<Directory /var/www/mysubdomain>
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>