Php 默认情况下可用的Apache站点和其他站点

Php 默认情况下可用的Apache站点和其他站点,php,apache,.htaccess,virtualhost,Php,Apache,.htaccess,Virtualhost,我有一个域名叫“mydomain.com” 服务器管理员webmaster@localhost DocumentRoot/var/www 选项-索引跟随符号链接 不允许超限 选项-索引跟随符号链接多视图 不允许超限 命令允许,拒绝 通融 .... 当我在url中写入以下地址时: www.mydomain.com/mysubdomain/myfolder 转到工作正常的网页 可用的mysubdomain站点如下,称为mysubdomain <VirtualHost *:80>

我有一个域名叫“mydomain.com”


服务器管理员webmaster@localhost
DocumentRoot/var/www
选项-索引跟随符号链接
不允许超限
选项-索引跟随符号链接多视图
不允许超限
命令允许,拒绝
通融
....
当我在url中写入以下地址时:

www.mydomain.com/mysubdomain/myfolder

转到工作正常的网页

可用的mysubdomain站点如下,称为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>

DocumentRoot/var/www/mysubdomain
服务器名www.mysubdomain.com
ServerAlias mysubdomain.com
ErrorLog${APACHE\u LOG\u DIR}/error\u mysubdomain.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access\u mysubdomain.LOG组合
选项-索引跟随符号链接多视图
允许超越所有
命令允许,拒绝
通融
当我键入
www.mydomain.com/mysubdomain/myfolder
时,一切正常
www.mydomain.com/mysubdomain/myfolder/login.php

但是当我写作的时候

不要像预期的那样工作,因为当我在login.php中包含ref时,比如
。/../myfolder
不能像我预期的那样转到根文件夹,我如何修复它

www.mydomain.com/mysubdomain/myfolder/login.php
中,像
。/../myfolder
这样的参考文件可以转到
/var/www/


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

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


您无法在目录树上导航到一个文件,该文件不显示在正在查看的虚拟主机的web根目录下。

解决方案很简单:

更改站点中可供访问的文件mysubdomain

DocumentRoot/var/www/mysubdomain 服务器名www.mysubdomain.com ServerAlias mysubdomain.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>
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>
ErrorLog${APACHE\u LOG\u DIR}/error\u mysubdomain.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access\u mysubdomain.LOG组合
别名/myfolder/var/www/myfolder
选项-索引跟随符号链接多视图
允许超越所有
命令允许,拒绝
通融

我如何解决这个问题?我需要访问根文件夹/var/www/,因为那里有php代码,我需要将其包含在我的代码中。