web-dev-qa-db-ja.com

Apacheを設定しましたが、「/ var / www」フォルダに書き込めません

私はApache、MySQL、およびPHP "サーバー"上の自分のホームページ用にFedora14をセットアップしました(読んでください:古いハードウェアは一緒に廃棄されました)。

ユーザーでログインしていますが、/var/www/htmlに対する権限がありません。

ファイルをこのフォルダーに保存できるように、これをどのように変更しますか?権限を変更したり、フォルダをホームフォルダにリダイレクトしたりしますか?

6
Jason94

Wwwフォルダーは、Apacheのセットアッププロセス中にほとんどのディストリビューションによって作成されます。セットアッププロセスはrootによって実行されるため、wwwフォルダーはrootによって所有されます。 ls -al/varを使用して、その権限を確認します。

drwxr-xr-x  5 root root  4096 May  2 11:34 www

chmodchownはGNU coreutilsであり、unixディレクトリの権限を変更するために使用できます。

chownを使用して、/var/www/html/の所有者とグループをユーザーとグループに変更します。

Sudo chown -R jason:jason /var/www/html/

ここにPHPスクリプトを入れ始める可能性が高いので、Apacheユーザー(ほとんどの場合www-data)を確認するためにchmodを使用する必要があります。 )それらの実行が許可されます。

先に進む前に nixの権限のしくみ を試して理解しておくと、時間を節約できます。幸運を。

8
oliland

Httpdサービス用に個別のuser:groupを作成することをお勧めします。 Apache:apacheは、私の Fedora 19 システムへのhttpdのインストール中にすでに作成されています。

次に、owner:groupおよびその他の権限をApache:apacheに変更し、ユーザー名をグループApacheに追加してgpasswd -a myUsername1 Apacheを実行しています。

SELinux がインストールされている場合は、SELinuxで構成されたシステムでのApacheサーバーの操作に関するガイドラインとルールに必ず従ってください。

1
ILMostro_7

Rootとして、chown yourusername /var/www/htmlを実行します。これにより、ユーザーに割り当てられます。または、ホームディレクトリ内のディレクトリを「DocumentRoot」として使用するようにApacheを設定することもできます。 (/etc/Apache/etc/httpdなどを参照)。

ほとんどのApacheインストールは、$HOME/public_html/http://server/~usernameにリンクするようにも設定されています。

両方のアプローチには、ファイルに広範囲のアクセス許可を与える必要があるという点でいくつかの制限があります。そのため、それらを編集して、Webサーバーがそれらを読み取ることができます(そして [〜#〜] php [〜#〜] 、必要に応じて編集してください)。このため、ファイルを/var/www/htmlにコピーして、Webサーバーユーザーに割り当てる方がよい場合があります。

1
Patrick Georgi