如何在HTML标记内访问webroot之外的文件?

时间:2013-05-07 02:06:13

标签: php html forms public-html

我在共享主机上,无法访问php.ini或apache配置文件。我有在webroot外部存储的PHP类文件,我需要使用HTML访问,我知道

<form action="../../classes/someclass.php" method="post">

无效。

为了能够访问这些文件,我必须编写哪种PHP脚本?

2 个答案:

答案 0 :(得分:3)

您需要编写一个可访问的控制器或代理,并将请求路由到所需的类。

/someclassproxy.php

在该脚本中,您将拥有:

require '../../classes/someclass.php';

但是,内部类直接处理请求并不常见。相反,控制器应使用类来处理请求。

答案 1 :(得分:1)

您无法POST到嵌套文件,但您可以访问指定共享目录中的文件。

假设您有权访问home/var/www/或类似的内容。并且无权访问www。

您可能将您的网站放在该级别的目录中,因此您的网站位于

home/var/www/yoursite

现在,假设您在www文件夹中有一个名为config.php的文件。假设您在yoursite文件夹中还有一个名为post.php的文件。

post.php可以很容易地包含config.php:

<?php 
include('../config.php');

?>

但很明显你不能发布到config.php,因为它位于网站的指定目录之上。

但是 -

我不认为这对你来说是新闻。我不确定我100%理解你的问题,因为你似乎知道你可以访问带有包含的文件......

也许我只是不明白你的问题。您可以随意澄清您认为已经拥有的内容。或者至少解释为什么你不能使用基本的包含