【问题标题】:Remove cPanel configuration paths in shared hosting删除共享主机中的 cPanel 配置路径
【发布时间】:2019-04-07 14:33:09
【问题描述】:

我有一个严重的问题,我的 cPanel URL 是公开的,我不希望任何人知道 cPanel 配置 URL,因为如果任何用户都可以使用 yourdomain.com/cpanel 访问它。

由于我有共享主机,我无法访问httpd/root 或服务器配置文件。我想知道是否可以在.htaccess 文件中添加一些代码并停止此重定向。

【问题讨论】:

  • 嗨,欢迎来到 StackOverflow。我想我可以看到你在做什么,但是为什么会出现这样的问题,因为一旦他们到达 URL 就需要用户名和密码才能实际执行任何操作?我将 cpanel 用于我所有的网络内容,就像许多其他人使用相同的共享主机一样,如果有人想猜,我的 cpanel URL 是免费的,但我的管理员用户名和密码不是。老实说,这并没有让我夜不能寐——我错过了什么?

标签: apache .htaccess cpanel shared-hosting whm


【解决方案1】:

如果您想拒绝访问http://www.example.com/cpanel,请执行以下操作:

  • 确保在 httpd.conf 中加载 mod_rewrite:LoadModule rewrite_module modules/mod_rewrite.so。由于您使用的是共享主机,因此您可能无法访问它,但它很可能已经加载。
  • 在您的 .htaccess 中,添加:

    RewriteEngine On
    RewriteCond %{QUERY_STRING} "^/cpanel$"
    RewriteRule ".*" "-" [F,L]
    
  • 标签[F]会导致服务器向客户端返回403 Forbidden状态码(参考:https://httpd.apache.org/docs/2.4/rewrite/flags.html#flag_f

为确保考虑到 .htaccess 指令,请确保将其添加到其所在目录的选项中:

AllowOverwride All

参考这个 SO 问题:How to Set AllowOverride all

【讨论】:

  • 我无法停止重定向
  • 什么重定向?你想屏蔽/cpanel,还有其他事情要做吗?
  • 它没有阻止它。
  • 如果查询正好是“/cpanel”,这将起作用。如果您希望它支持“/cpanel/SOMETHING”,请修改 RewriteCond,删除 $ 符号。所以它会变成RewriteCond %{QUERY_STRING} "^/cpanel"。我还会在我的答案中添加一些内容。
  • 我不希望任何人看到 cpanel 登录页面。
【解决方案2】:

我之前有共享主机,我发现这在共享主机中是不可能的,你需要有 root 访问权限。
我买了一个 vps 主机并通过以下操作将其删除:

  1. 复制 EasyApache 4 的 Apache 2.4 模板以允许使用命令行/终端进行自定义:
cp -a /var/cpanel/templates/apache2_4/ea4_main.default /var/cpanel/templates/apache2_4/ea4_main.local
  1. 通过编辑 /var/cpanel/templates/apache2_4/ea4_main.local 来更改条目以匹配您的偏好:
vim /var/cpanel/templates/apache2_4/ea4_main.local
  1. 例如,如果您想禁用 /cpanel 别名,您可以在编辑文件时删除此行:
ScriptAliasMatch ^/?cpanel/?$ /usr/local/cpanel/cgi-sys/redirect.cgi
  1. 然后使用以下命令重建 httpd.conf 文件:
/scripts/rebuildhttpdconf
  1. 最后一步是使用以下命令重新启动:
service httpd restart

您的 cPanel 配置路径将被删除。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-16
    • 2023-02-08
    • 2018-09-04
    • 2017-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多