Apache:可以在 webroot 之外定义一个脚本作为起始页吗?

Posted

技术标签:

【中文标题】Apache:可以在 webroot 之外定义一个脚本作为起始页吗?【英文标题】:Apache: possible to define a script outside the webroot as the start page? 【发布时间】:2012-04-21 00:03:08 【问题描述】:

在 httpd.conf 我定义了一个这样的虚拟主机:

<VirtualHost *:80>
  ServerName myproject
  DocumentRoot "C:/xampp/htdocs/MyProject/www"
</VirtualHost>

现在我想要一个脚本www 文件夹之外作为这个网站的起点。

我想首先运行的脚本是:C:/xampp/htdocs/MyProject/build.php,然后它开始做一些工作(复制东西、生成缓存等),然后重定向到www 文件夹中的index.php(使用@987654326 @ 在 PHP 中)。

这可能吗?

更新

这可行(放在 VirtualHost 中):

Alias /index.php "C:/xampp/htdocs/MyProject/build.php" 

【问题讨论】:

【参考方案1】:

是的,当然。

您可以将根目录放在任何您想要的位置 - “DocumentRoot”不需要必须在 www 下。

您可以将任何其他目录放在您想要的任何不同物理位置 - 只需使用 &lt;Alias&gt; 指令:

http://www.thewebhostinghero.com/tutorials/apache-alias.html

【讨论】:

是的,但我确实希望 DocumentRoot 是 www !整个页面都使用这个根,但我只希望第一页(index.php 或 index.html)来自其他地方...... thanx ,别名确实有效!我将其定义为 Alias /index.php "C:/xampp/htdocs/MyProject/build.php"

以上是关于Apache:可以在 webroot 之外定义一个脚本作为起始页吗?的主要内容,如果未能解决你的问题,请参考以下文章

嵌入位于 webroot 之外的 flv 和 swf

从 Vue 访问 CakePHP webroot 目录:图像加载

有没有办法读取除python apache beam中定义的文件列表之外的所有文件?

在 htdocs 文件夹之外制作 XAMPP / Apache 服务文件 [关闭]

在 htdocs 文件夹之外制作 XAMPP / Apache 服务文件 [关闭]

4.在Java Web应用中,JSP文件应该放在啥地方,编译后的Servlet和JavaBean应该放在啥地方?