CentOS6.5でcakePHPをインストールし、app配下の権限設定に問題発生

このQ&Aのポイント
  • CentOS6.5にインストールしたcakePHPのapp配下の権限を変更した後、他のユーザがアクセスできない問題が発生しました。他のユーザがappに入ろうとすると「Permission denied」とエラーが出ます。実行権限がないため、appに入れない可能性があります。
  • 権限を777に変更すると、ユーザは仮想OS内でもホストOSのWinSCPからもappにアクセスできますが、WinSCPからのファイルの更新ができません。777にしていてもファイルの更新ができない原因は不明です。
  • 入門者のため、問題に困っています。アクセス権限やファイルの更新に関するアドバイスをいただけると助かります。
回答を見る
  • ベストアンサー

アクセスができない

VMwareを使用してCentOS6.5を入れました。 cakePHPをインストールし、app配下にrootでファイルを作成しました。 その後、appの所有者をapacheに変更し、権限を766にしました。 しかし、他のユーザでappに入ろうとすると、   Permission denied とエラーが発生します。 ホストOSからWinSCPで接続しようとすると「ファイルがありません」と表示されます。 766でディレクトリの中に入れないのはなぜでしょうか・・・? 実行権限がないだけでも入れないものなのでしょうか。 777にしてみたところ、ユーザは仮想OS内でも、ホストOSのWinSCPからもapp内にアクセスできたのですが、 WinSCPからのファイルの更新ができませんでした。 777にしていてもファイルの更新ができないというのは、何が原因でしょうか。 当方かなり入門で躓いているので、 ご教授いただけたらと思います・・・。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4848/10262)
回答No.1

ディレクトリの下のファイルにアクセスするには、実行権限が必要です。 読み取り権限があれば、何というファイルがあるかはわかりますが、そのファイルにアクセスできません。 ファイルの実行ビットは、文字通り実行の権限有無を表しますが、ディレクトリは実行できないので、実行ビットが余ります。そこで、実行ビットの位置に、「その下のファイルにアクセスできる」という権限の意味を与えてます。 >777にしていてもファイルの更新ができないというのは、何が原因でしょうか。 ディレクトリが777でもその下のファイルの書き込み権限が無いとか。 あるいは、SELinuxで保護されているか。

hizumin
質問者

お礼

ご指摘の通り無事解決しました。 ありがとうございました。

関連するQ&A

  • Apacheをroot以外の権限で動かしたいのですが、可能でしょうか。

    Apacheをroot以外の権限で動かしたいのですが、可能でしょうか。 (BOF対策です。) 現在、CentOS 5.4を使用しており、root以外のユーザでapacheを起動すると、 Permission denied: make_sock: could not bind to address 0.0.0.0:80 とポート80に対する権限が無いと怒られてしまいます。 以上、よろしくお願いします。

  • centos上でcakephpが作れない

    CENTOS7 cakephp3 /var/www/htmlの中にcakephpのディレクトリを作ろうと、 cd /var/www/html composer create-project --prefer-dist cakephp/app test としましたが、 mkdir(): Permission deniedというエラーが出てしまうので、 cd /home/user composer create-project --prefer-dist cakephp/app /var/www/html/test としてインストールすると、正常にインストールしてる風ではあったんですが、 ls /var/www/html で見てみてもディレクトリが作られていません。 権限については ls -l /var/www drwxrwxr-w. 2 root root html となってるので問題ないという認識です。 ちなみにselinuxが邪魔するというので無効化しました。 $ getenforce Disabled 初心者ですがよろしくお願いします。

  • CentOSでのwordpress構築について

    CentOSでのwordpress構築について 現在、CentOSでwordpressを構築しようとしています。 wordpressディレクトリのパーミッションをどのように設定すればいいかで悩んでおります。 wordpressのインストール時に参考にしたHPでは、wordpressディレクトリの所有者を 「chown -R apache:apache /var/www/wordpress/」等でapacheに設定するようになっていました。 テスト環境で、wordpressを使用するユーザーがWinSCPを使用してファイルのアップロードや 上書きを行おうとした時に、パーミッションの関係上(ディレクトリが755、ファイルが644)、 ファイルを作成・変更できない状態となりました。 apacheグループにwordpressを使用するユーザーを追加しても、所有者がapacheのため、 パーミッションを変更したり、ファイルを削除したりすることができませんでした。 wordpressを使用するユーザー権限のみで、wordpress以下のファイルやディレクトリを 操作させるようにするにはどうすればいいのでしょうか? セキュリティと利便性のバランスが取れた運用方法を模索しています。 ネット上にはphpでパーミッションを変更すればできるとの記述がありましたが、 それを、wordpress使用者にお願いするのも変かな・・・と思いました。 ご指南のほど、お願い申し上げます。

  • 複数の一般ユーザーが編集できるディレクトリ/ファイル作成

    Debian etch4 Apache 2.2 SFTPクライアント: WinSCP サーバー管理者初心者です。 複数の一般ユーザーが、同じディレクトリ/ファイルを編集する環境がつくれず困っております。 ↓の方法で、'project'グループに'user0'ユーザと'user1'ユーザを所属させました。 # usermod -G project user0 # usermod -G project user1 ~# less /etc/group | grep project project:x:1004:user0,user1 と登録されたのが分かります。 ディレクトリ /var/www/project の権限, 所有者 : 所有グループは、 775, user0 : project です。 このディレクトリ以下に web公開や、編集するディレクトリ/ファイルを置きます。 user1 でWinSCP からログインして、/var/www/project/の test.html ( 664 所有者:user0 所有グループ:project ) を ローカルから上書きしようとしたら、「Permission denied」のエラーが帰ってきます。 user0 でWinSCP からの上書きは可能です。 とすれば、この場合 # usermod -G project user1 のコマンドは効果がないということになりました。 さらに、 # usermod -g project user1 しても、 上書きしようとしたら、「Permission denied」のエラーでした。 user1 で この /var/www/project/test.html を上書きするには、どんなコマンド(?)や設定が必要なのですか。 ご教授願います。

  • PHP

    CentOS6でアパッチを起動しようとすると ルート権限で service httpd start コマンド打つと Permission denied: make_sock: could not bind to address [::]:18080 とでて失敗します。 なぜでしょうか?

  • rcpができません。

    Solaris8でrcpコマンドを発行すると、「Permission denied」と表示され、怒られてしまいます。 rcpを使えるようにするために必要な作業を教えて下さい。 ※コピー先の書き込み権限はあります。 ※.rhostsファイルにはホスト名とユーザ名を書いています。

  • winSCPでlinuxフォルダを作りたい

    winSCPを使用してubnutu14にhtmlファイルを送りたいのですが、 ubuntu側にファイルを作成しようとすると、permission deniedとメッセージが出てしまい、 ファイルを作る事が出来ません。 winSCPの設定が悪いのでしょうか?

  • パーミッション変更ができません

    CentOS4.4とProftpdでFTPサーバを構築したのですが、クライアント(windowsからFFFTPで)から接続してファイルをアップロードしたのですが、"550 hoge: Permission denied"とエラーがでます。 これはユーザの権限が低いからなのでしょうか?それともサーバの設定なのでしょうか?検索してもエラーの内容はわかっても解決策がわかりません。よろしくお願いします。

  • Win2KにVMWarre入れましたが、苦戦していませ

    Windowsのお古サーバいただきましたので、そのWinにVMWareを入れてみた。 できればゲストOSにはCentOS入れてしまいたい。 それで、そのCentOS上のApacheでWebサービスを提供したい。 このゲストOSが提供するためには、NATは使えないのか??? ホストOSからは、ゲストOSのApacheが見えているというのに それ以外の端末からはNG。。。 どなたかお力ぉぉ 要は、お外からもアクセスできるApacheをゲストOS側に構築しようとしたら、 ブリッジ接続にしとかなあかん、ということでしょうか? NATを使うとホスト以外の誰からも見れなってしまう。 こういう理解であってますでしょうか?

  • ファイルアップロード(Windows2000環境)

    Windows2000にApacheとPHPをインストールして、 ファイルアップロードのフォームを 作ったのですが、アップロードしようとすると、 ~Permission denied in ~ というWarningが表示され、アップロードすることが できません。 アップロードするディレクトリにはどういう権限を 与えればよいのでしょうか?

    • 締切済み
    • PHP