编辑.htaccess而无需通过Wordpress进行FTP访问

时间:2013-12-20 17:57:50

标签: wordpress .htaccess ftp

我无法访问我的FTP,但我可以通过Wordpress编辑网页。有没有办法可以通过管理框架生成.htaccess文件?我知道可能有一个插件可以做到这一点,但请记住我没有FTP访问权限,插件需要安装它。

我需要.htaccess文件将用户重定向到另一个站点。

我知道这可能会让你觉得奇怪和愚蠢,但这是因为该公司决定保持网站托管,我猜,这是一个“友好”的托管公司。没有办法恢复FTP的登录/密码,所以这可能是唯一的解决方案。

请尝试发布建设性意见,不要“联系托管公司”。如果可以,我愿意。

3 个答案:

答案 0 :(得分:2)

如果您的托管公司已正确设置wordpress,则无法执行此操作,因为unix权限应使.htaccess只读给Web服务器的所有者。

如果公司完成此操作,并且您有办法更改模板,则可以通过创建包含用于打开和编写.htaccess文件的php代码的模板来获得成功。

示例代码放在header.php的顶部:

    echo 'Current dir: ',getcwd(),"<br>\n";
    if ($handle=opendir('.')) {
            while (($file=readdir($handle))!==false) {
                    $ok=(is_writable($file) ? "ok" : "can't write");
                    echo "file '$file': $ok<br>\n";
            }
            closedir($handle);
    }

这是为了测试你是否在wordpress安装的根目录中。它应该为您提供当前目录,该目录中所有文件的列表(期望.htaccess,index.php和各种wp- *文件)及其可写性。

检查完所有内容后,请添加

file_put_contents('.test', "RewriteEngine On\nRewriteRule ^(.*)$ site.com$1 [R=301,QSA,L]\n");
echo("<code><pre>-------- included file starts here\n");
include(".test");
echo("-------- included file ends here</pre></code>\n");

到php代码。这会写入测试文件并包含它,以便您可以检查一切是否正常。检查文件内容后,将.test替换为.htaccess。

警告:您应该非常确定.htaccess的内容。 file_put_contents不会附加新字符串,它会覆盖整个文件。一旦你编写了一个糟糕的.htaccess文件,你可能无法再次更改它,因为Web服务器会将你重定向到新网站,而不是在旧网站上执行脚本。

答案 1 :(得分:0)

我很抱歉你的情况。什么是托管公司(如果我使用它们将记住这一点)。试图帮助:

  1. 您是否可以访问CPanel?大多数托管服务提供商都开箱即用。 Cpanel有一个文件管理器。

  2. 研究Wordpress文件管理器(http://wordpress.org/plugins/wp-filemanager/

答案 2 :(得分:0)

如何从托管Cpanel编辑wordpress .htaccess文件:如果您当前无法登录您的wordpress仪表板,或面临500内部服务器错误。您有可能从wordpress仪表板编辑.htaccess文件的可能性为90%。在这种情况下,您只能通过从cpanel编辑来修复wordpress .htaccess文件。使用.htaccess编辑器插件编辑来自wordpress仪表板的.htaccess文件风险很小。如果您将实施任何错误的代码,那么您可能会面临500内部服务器错误,您的网站可能会崩溃。因此,首先应该在编辑之前备份现有的.htaccess文件。如果你有wordpress .htaccess文件的备份,那么你也可以通过你的主机cpanel上传它。 https://howtoways.com/how-to-edit-wordpress-htaccess-file-from-hosting-cpanel/