私はLinux、Apache、PHP、mysqlを設定する方法を学んでいます。
私はこれに従ったスピード。 /var/www/ 以下のファイルとフォルダに対する root:www-dev の権限を設定する方法
今、私は/var/www/ディレクトリを移動する方法を知りたいと思い、私が設定した権限が維持されると仮定します。私はApacheに、そのディレクトリの場所が変更されたことを知らせるためにいくつかのApache設定を編集する必要があると確信しています。
mysqlがどこにあるのかよくわかりません。また、phpがapacheモジュールなので、/var/www/のどこかにあると仮定します。
私は一般的なLinuxと簡単なWebサーバーの設定方法を理解しようとしています。
現在の設定は、私が設定した権限を除いてデフォルトです。
# yum install httpd
# yum install mysql mysql-server
# yum install php php-mysql
答え1
安全な方法でやってください!
cp -pr /var/www /srv/www
フルアクセス権(-pスイッチ)を維持しながら、/ var / wwwの内容を新しいフォルダ/ srv / wwwに再帰的に(-rスイッチ)コピーします。
あなたは変わらなければなりません
DocumentRoot
WebサイトまたはWebホスティング構成ファイルの設定。
どのphpモジュールやmysqlモジュールがあなたの状況に適しているか心配する必要はありません。
答え2
/var
とが/srv
同じファイルシステムにある場合は、ディレクトリをあるwww
ファイルシステムから別のファイルシステムにアトミックに移動できます。
mv /var/www /srv/
これにより、ファイルが開いているすべてのプロセスでwww
ファイルが開いたままになります。
/var
他のファイルシステムにある場合は、ファイルのコピー後に削除中に移行期間があるため、ファイルを移動する前にそのファイルを使用するサービスを停止することをお勧めします/srv
。www
この場合、ダウンタイムを最小限に抑えるには、次の手順を実行します。
権限を考慮してファイルをコピーします。
cp -a /var/www /srv/
/srv/www
代わりにを指すように設定ファイルを編集します/var/www
。- 以下のファイルを削除してください
/var/www
。
最初にコピーしてから削除すると、ファイルのコピーが2つ存在する移行期間があります。したがって、www
移行中にこのディレクトリに何も記録されないようにする必要があります。そうしないと、両方のレプリカが同期されず、一部のデータが失われる可能性があります。
変更する必要があることを確認してください。
以下の参照のために、以下のファイルまたは
/etc
それ/var/www
自体の下のファイルを検索してください/var/www
。grep -r '/var/www' /etc /var/www
参照されている絶対シンボリックリンクを見つけます
/var/www
。find /etc /var/www -lname '/var/www*'
答え3
これを変更する必要がありますDocumentRoot
が、次のようにすることもできます。
ln -si /var/www /srv/www
これにより、最初から2番目のシンボリックリンクが生成されます。あるいは、kajiが言ったように、/var/wwwを/srv/wwwにシンボリックリンクするのではなく、上記のコマンドで2つのパラメータを変更するだけです。