替代站点根重定向到“;home/“;以将所有站点路径存储在一个单独的位置


Alternative to site root redirecting to "home/" to keep all site paths stored in one separate location

我把所有的脚本、样式表和php文件都放在不同的文件夹中。每个网站页面都有一个require()语句,然后包括必要的文件。作为一种临时措施,我有它们相对于站点根,并且只有一个目录深。例如:

/back/php/scripts.hp:

<script src="../back/js/lighbox.js"></script>
<script src="../back/js/site.js"></script>

/home/index.php,/services/index.php,/portfolio/index.php:

<head>
   <? require "../back/php/scripts.php"; ?>
</head>

/:

<? header("Location: home/"); ?>

我确信有一种更好的方法来处理网站结构,因为这将我的目录限制为只有一个深度,而且在开始时还需要额外的重定向。我非常感谢你的意见。应该如何改变?你是如何构建你的网站架构的?

您可以使用前置控制器类型的系统。

所有URL都使用mod_rewrite通过index.php重定向,它处理所需文件的引导(最好通过自动加载机制)以及相关路由。

这还有一个额外的好处,允许您将几乎所有的PHP从httpdocs文件夹中移出。

所以你的文件布局应该是这样的:

- site.com
    - classes
        - Pages.php
        - Auth.php
        - Route.php
    - vendor
        - PHPMailer
        - Zend
    - httpdocs
        - media
            - css
            - js
            - images
        - index.php