0

这里不是程序员或 PHP 专家:请假设入门级知识。

出于安全原因,我想将我的主 WordPress 文件夹中 index.php 的内容分配给其他东西——比如说,fish.php只有一个index.php调用它的东西,如下所示:

<html>
<body>

<?php include 'fish.php'; ?>

</body>
</html>

fish.php文件将包含通常在 index.php 中的所有内容。它只会被命名为fish.php.

这会彻底破坏 WordPress 吗?一个完整的、详细的index.php文件是绝对必要的,还是它是一次性的“加载并运行”php 文件,一旦 WP 在浏览器中就不再被引用?

4

1 回答 1

1

你的问题令人困惑。所以你想要另一个文件,然后包含index.phpWordPress 中的内容?你想达到什么目的?您问题的基本要点似乎是这一行:

一个完整的、详细的 index.php 文件是否绝对需要它才能运行,或者它是一次性的“加载并运行”php 文件,一旦 WP 在浏览器中就不再被引用?

内容管理系统(或几乎任何基于控制器的系统)的工作方式是将所有请求过滤到一个文件中,然后对其采取行动。在 WordPress 中,即index.php. 它不仅仅是加载主页。它是所有其他页面的网关页面。所以你可以随心所欲,但为什么呢?为了什么利益?

编辑:对我的回答的评论中的原始海报解释说,他们正在考虑防止 WordPress 网站被黑客入侵的方法。重命名文件将不起作用。特别是因为index.php只在服务器端看到。假设通过一些疯狂的配置,原始发布者将 Apache 调整为始终加载fish.php为他们的index. 网络浏览器——以及用户和机器人——仍将获得 WordPress 内容。相反,我执行以下操作作为避免黑客攻击的一种灵活的蛮力方式:我.htaccess在 CMS 系统的管理区域设置密码保护。逻辑是——而且到目前为止它一直有效——大多数 CMS 系统都受到攻击管理员或登录过程中漏洞的脚本的攻击。是的,有些机器人可能会通过。但是你可以用这种方法消除大量的“低悬的果实”。

例如,下面是 Apache 虚拟主机配置的一部分,我将使用它作为我所调用的站点的示例,该站点mygreatsite.com基于标准/var/www. 请注意,我正在添加授权wp-login.phpwp-admin但允许admin-ajax.php通过,因为许多功能都使用它。现在,管理该站点的用户将需要在其标准 WordPress 凭据之上记住一个额外的(有点通用的)<code>htpasswd_wordpress_admin 用户/密码组合。但猜猜怎么了?大多数 CMS 黑客脚本在遇到像这样来自 Apache 的基于浏览器的密码时都会放弃。

  # Added for WordPress CMS protection.
  <Directory /var/www/mygreatstite.com/wordpress/wp-login.php>
    Options FollowSymLinks
    AllowOverride all

    AuthName "WordPress Login"
    AuthType Basic
    require valid-user
    AuthUserFile /etc/apache2/htpasswd_wordpress_admin

    Order Deny,Allow
    Deny from all
    Satisfy Any
  </Directory>

  # Added for WordPress CMS protection.
  <Directory /var/www/mygreatstite.com/wordpress/wp-admin>
    Options FollowSymLinks
    AllowOverride all

    AuthName "WordPress Admin"
    AuthType Basic
    require valid-user
    AuthUserFile /etc/apache2/htpasswd_cms_admin

    Order Deny,Allow
    Deny from all

    # Allow 'admin-ajax.php' to pass.
    <Files admin-ajax.php>
      # Order Allow,Deny
      Allow from all
    </Files>

    Satisfy Any

  </Directory>
于 2013-11-10T19:35:43.603 回答