嗨,林新来建立网站。我有一个文档根目录:home/user/public_html/www.example.com/public 我所有的静态文件都应该可以公开查看。但其中许多文件都包含 config.php。这些 config.php 文件具有用户名和密码,因此将它们放在公共文件夹中似乎并不正确。
这些文件应该放在哪里?
如果我将配置移动到不同的目录(我已经尝试过),那么静态文件就再也找不到配置文件了。我会指向新位置吗?
嗯,WordPress 是目前最流行和最大的平台之一,它只是将 wp-config.php 文件放入文档根目录,所以如果它对他们来说足够好,你可以说它对你来说已经足够好了 :)
您当然可以将 config.php 文件存储在您的实际文档根目录的上一级。如果给出正确的路径,PHP 仍然可以访问它。
例如http://codex.wordpress.org/Hardening_WordPress#Securing_wp-config.php
每个包含 config.php 的文件都需要用正确的路径引用它。如果您只是将 config.php 存储在根目录中,则可以更改所有包含以使用
include_once($_SERVER['DOCUMENT_ROOT'] . '/config.php');
无论包含文件的位置如何,这都将起作用。
是的,您需要更改 config.php 相对于静态文件的位置。如果我理解正确,默认情况下它们都在同一个目录中,因此
include 'config.php';
如果要将它们移动到新文件夹中,则必须具有,假设文件夹的名称是隐藏的,那么您必须将其更改为:
include 'hidden/config.php';
最后,如果您决定上移一个目录,则必须使用
include '../config.php';
您可以在此处详细了解相对路径: 绝对与相对链接