如何为PHP设置私有文件夹包括用于本地测试和实时使用的文件。

如何为PHP设置私有文件夹包括用于本地测试和实时使用的文件。,php,apache,dreamweaver,Php,Apache,Dreamweaver,这里有点麻烦。这里可能有一个简单的解决方案——但我无法让它工作或创建一个非笨拙的测试环境。这可能在其他地方得到部分回答,但我仍在努力——所以我要问 Linux VPS上的实时路径(vhosts目录中有许多站点): 我希望能够配置私有级别的包含文件文件夹: /var/www/vhosts/mysite.com/subdomains/mySubdomain/includes/myincludes.php /*where I want the webserver only to read */

这里有点麻烦。这里可能有一个简单的解决方案——但我无法让它工作或创建一个非笨拙的测试环境。这可能在其他地方得到部分回答,但我仍在努力——所以我要问

Linux VPS上的实时路径(vhosts目录中有许多站点):

我希望能够配置私有级别的包含文件文件夹:

/var/www/vhosts/mysite.com/subdomains/mySubdomain/includes/myincludes.php  /*where I want the webserver only to read */  
注意:我还想在上传后使用同一级别的目录来移动私有文件

在本地,我尝试在以下位置创建类似的结构:

C:\xampp\htdocs\mySubdomain\httpdocs  
一个坏主意是将本地vHosts文件中的DocumentRoot设置为mySubdomain文件夹,但这样会暴露目录结构,例如:

<img src=”/httpdocs/images/image.png">  

–在现场不可接受

在我的XAMPP测试服务器上,我为mysite.local设置了vhosts文件,以创建以下内容

NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
     DocumentRoot C:/xampp/htdocs/
    ServerName localhost
</VirtualHost>
<VirtualHost mysite.local>
    DocumentRoot "C:/xampp/htdocs/mySubDomain/httpdocs"
     ServerName mysite.local
     <Directory "C:/xampp/htdocs/mysite" ></Directory>
</VirtualHost>
NameVirtualHost 127.0.0.1:80
DocumentRoot C:/xampp/htdocs/
服务器名本地主机
DocumentRoot“C:/xampp/htdocs/mySubDomain/httpdocs”
ServerName mysite.local
但是,我无法访问mySubdomain文件夹中的include

问题:

  • 与“实时”级文件夹(即httpdocs/includes)中的htaccess相比,这种方法是否提供了任何真正的好处?我曾多次提到,“低于公共”的存储将是一种更安全的文件和首选文件夹结构
  • 是否包括路径和文档根目录设置?其他一些神奇而微妙的设置平衡?在httpdocs(而不是htdocs本地文件夹)被标识为公共目录的地方,如何创建本地测试访问
  • 如果可以在此配置中设置DreamweaverCS5.5,以利用它的一些优良功能(如自动发现包含文件)进行测试和浏览器检查,则将获得额外奖励(以及noob赠品)
  • 是的,确实如此。例如,如果某个东西或某个人把Web服务器搞砸了,破坏了PHP,但破坏了Web服务器本身,人们可能可以下载
    public/somebusinesslogic.PHP
    ,但不能下载
    private/somefilewithpasswords.PHP
    。在Apache上也可以禁用htaccess
    文件,这取决于它的实际内容可能需要一段时间才能注意到
  • 在任何一点上,您都没有提供错误的内容,因此我无法告诉您哪里出了问题,但在Windows上模拟此设置应该不会有问题,只要您使用相对包含
  • 我对用DreamWeaver制作的产品有足够的仇恨,我看到了这些产品,我就不会用一根10英尺长的杆子去碰它。当然,这是5年多以前的事了。它可能已经变得不那么可怕了

  • 在上可能会有更多的帮助。谢谢你,我不知道这一点-非常有趣,可能有用,但似乎没有得到解决。目前我认为解决方案可能涉及php_includeish语法和正确的路径实践的一些组合-但我显然不知道。这真的不是我遇到的错误,只是需要指定公共区域的目录(httpdocs/mypublicrootindex.php),而我似乎无法绕过它,因此需要公开私有的httpdocs目录,并将其作为所有链接的一部分。谢谢,但我现在决定使用标准的httpdocs拒绝文件夹。
    NameVirtualHost 127.0.0.1:80
    <VirtualHost 127.0.0.1:80>
         DocumentRoot C:/xampp/htdocs/
        ServerName localhost
    </VirtualHost>
    <VirtualHost mysite.local>
        DocumentRoot "C:/xampp/htdocs/mySubDomain/httpdocs"
         ServerName mysite.local
         <Directory "C:/xampp/htdocs/mysite" ></Directory>
    </VirtualHost>