WEBサイトを制作した時には、確かにあった、public_htmlが数ヶ月後に、見当たらなくなりました。

WEBサイト自体は問題無く表示されているので、 public_html フォルダを消した訳でもなく。動揺して色々調べたところ、同じようなトラブルが生じた方がいました。

xserverのpublic_htmlにアクセスする方法

回答者の中に、以下の回答をされている方がいました。

過去のやりとりから
ロリポップを利用されていたようですので、
ロリポップからXserver へ引っ越しされる際に
.ftpaccess も一緒に引っ越してしまった、
というのが真相だと思われます。

ロリポップは標準で .ftpaccess で
FTPアクセス制御をしています。


引っ越し後しばらく問題が起こらなかったのは
接続元のIPアドレスが変わらなかったからです。

この回答を見て、やっと原因が分かりました。私も、ロリポップからエックスサーバーへ、サーバーを移転したのですが、その際に、確かに「.ftpaccess」も public_html へアップしてしまっていたのです。

質問主の方は、エックスサーバーのサポートへ連絡して対処してもらったそうなので、私もそうしようかと思ったのですが、別の方法が無いか検索してみたところ以下の記事に辿り着きました。

PuTTYでSSH接続して.ftpaccessを削除する方法

つまり、SSH接続出来る環境があれば、 .ftpaccess を自力で何とか出来るようです。幸いに、エックスサーバーは、SSH接続可能です。そこで、更に、SSHの接続方法について詳しく書いてあるサイトを探してみたところ、以下の記事にいきあたりました。

Xserver(エックスサーバー)でSSHの使い方

画像付きで非常に詳しく書いてあるので、SSH接続するところまでいけました。次は、 .ftpaccess を探す作業です。探す際には、UNIXコマンドを使う必要があります。以下の画像は、UNIXコマンドを使って、 .ftpaccess を見つけ出し、_ftpaccess をリネームするところまでを表示しています。

使っているコマンドを解説しておきます。

ls ファイル一覧の表示

cd 指定ディレクトリへ移動

mv A B ファイルAの名前をファイルBに変更

です。

ls -a

とあるのは、 .ftpaccess を表示する為のコマンドです。ls だけでは、ファイル名が無い、 .ftpaccess や .htaccess などのファイルは表示されません。

この作業をすることで、 私の場合は public_html が表示されるようになりました。問題解決の助けになれば幸いです。