回答:
以下は、joomlaサイトをサブフォルダーからルートに移動するために必要な手順です。
次の行を探しています:
var $live_site = '';
var $log_path = '/home/username/public_html/joomla/logs';
var $tmp_path = '/home/username/public_html/joomla/tmp';
var $ftp_root = 'public_html/joomla';
への変更:
var $live_site = '';
var $log_path = '/home/username/public_html/logs';
var $tmp_path = '/home/username/public_html/tmp';
var $ftp_root = 'public_html';
場合は$live_site
、変数が値を持っていた。
たとえば、$live_site = 'http://www.site.com/joomla';
次に調整します:
$live_site = 'http://www.site.com';
.htaccessという名前のファイルを確認します。利用可能な場合は、これも編集します。次の行を探しています:
RewriteBase /joomla
への変更: RewriteBase /
* joomlaの代わりに、joomlaが存在する実際のサブフォルダの名前が表示されることを期待してください。
ここにもう少しだけ。ほとんどの場合、robots.txtファイルには触れないため、これを行う必要はありませんが、次のようなものがある場合は、
User-agent: *
Disallow: /joomla/administrator/
Disallow: /joomla/bin/
Disallow: /joomla/cache/
Disallow: /joomla/cli/
Disallow: /joomla/components/
Disallow: /joomla/includes/
Disallow: /joomla/installation/
Disallow: /joomla/language/
Disallow: /joomla/layouts/
Disallow: /joomla/libraries/
Disallow: /joomla/logs/
Disallow: /joomla/modules/
Disallow: /joomla/plugins/
Disallow: /joomla/tmp/
次に/joomla
、各パスの先頭にあるプレフィックスを削除する必要があります。
ホストへのシェルアクセスがある場合、webrootの外部にJoomlaインストールを保存してシンボリックリンクすることも理にかなっています。このようにして、インストールをソース管理したり、複数のステージング/運用バージョンを簡単に切り替えたりできます。
これをサブドメインで使用すると、新しいバージョンのテストプロセスがはるかに簡単になります。
最善の方法は、Webホスティングサイトでサイトの割り当てられたルートフォルダを変更することです。これを行うと、サイトの新しいバージョンを構築し、古いバージョンを保存/維持できます。私がしなければならないのは、新しいバージョンをリリースするたびに、ドメインの「ドキュメントルート」を新しいフォルダに変更することだけです。サイトのリダイレクトは避けてください。Googleの検索アルゴリズムはそれを気に入らないようです。
Akeeba BackupコンポーネントとAkeeba Kickstartスクリプトの使用を誰も提案していないのはなぜだろうか。一部のユーザーにとっては、FFrewinが提案したのと同じことを行うより簡単な方法かもしれません。Akeebaはすべてを自動的に行います。
どちらも無料です(基本バージョンでは、プロは必要ありません)。AkeebaBackup.com/downloadから直接ダウンロードできます。
必要な手順は次のとおりです。
以前のインストールを削除する前に、新しいインストールが実際に機能することを確認してください。バックアップファイルがダウンロードなどによって破損し、バックアップをインストールできない可能性があります。
私はこれがもう少し複雑な方法のように見えることも知っていますが、そうではありません、それは簡単で通常は速いと信じています-あなたのFTPの場所からコンピュータに数千のファイル(Joomla全体)をコピーして新しいFTPの場所にアップロードする数時間かかります。Akeebaを使用すると、1時間以内に稼働できます(Joomla Webサイトのサイズによって異なります)。
localhostを次のようなルートフォルダーではなくサブフォルダーにリダイレクトする場合
/var/www/subfolder
次に、サーバーでこの構成を行う必要があります。次のパスでファイルを開きます。
/etc/apache2/sites-enabled/000-default.conf
次に、次のフォルダのルートパスを変更する必要があります。
ServerAdmin webmaster@localhost
DocumentRoot /var/www/subfolder
localhostを実行すると、サブフォルダーのファイルが開きます。