私はCentOS 6.4を実行しており、WordPressがインストールされています。 (照明付き)
今の問題は、WordPressエディタのどのファイルでも書き込み変更を行うことができないということです。 header.php、style.cssなど、Wordpressは更新ボタンが必要な場所に次のものを表示します。変更を保存する前にファイルを書き込み可能にする必要があります。
メモ:
- これで、Apacheはrootユーザー(デフォルト)として実行されます。
上記のすべてのファイルが配置されているテーマフォルダの権限は次のとおりです。
drwxrwxr-x。 5 ルート bluegig 4096 7月7日 17:32 トピック
drwxrwxr-x。 3ルートApache 4096 7月7日23:15アップロードしました
私は走った修正 775これで、「topic」および「upload」コマンドが実行されます。chmod 777は書き込み権限を提供しますが、安全ではないと思います。他の/より良い方法はありますか?
(bluegigが私のドメイン名なのになぜそこにいるのかわかりません...)
どうして:
- WordPressで読み込んで実行できます。
- WordPressのファイルをアップロードフォルダにアップロードできます。
私はできません:
- WordPressでファイルを変更します(エディタを介して)。
- WordPressのファイルを変更できるように書き込み権限を有効にする方法は?
WP内でftpアカウントにログインしていません。
答え1
Apacheのインストールはrootとして実行されているようですが、実際にはuserとして実行されていますapache
。次のファイルを見るとこれを確認できます。
$ grep "^User" /etc/httpd/conf/httpd.conf
User apache
Web UIを介してWordPressを使用してインストールを管理する場合は、WordPressディレクトリ全体をこのユーザーが所有する必要があります。
私は通常、次のようにWordPress用の別々のディレクトリを作成します。
$ pwd
/var/www
$ ls -l | grep wordpress
drwxr-xr-x. 5 apache apache 4096 Apr 25 19:27 wordpress
WordPressディレクトリの内容は次のとおりです。
-rw-r--r--. 1 apache apache 395 Jan 8 2012 index.php
-rw-r--r--. 1 apache apache 5009441 Jan 23 13:40 latest.tar.gz
-rw-r--r--. 1 apache apache 19929 May 6 2012 license.txt
-rw-r--r--. 1 apache apache 9177 Jan 25 11:25 readme.html
-rw-r--r--. 1 apache apache 4663 Nov 17 2012 wp-activate.php
drwxr-xr-x. 9 apache apache 4096 Dec 11 2012 wp-admin
-rw-r--r--. 1 apache apache 271 Jan 8 2012 wp-blog-header.php
-rw-r--r--. 1 apache apache 3522 Apr 10 2012 wp-comments-post.php
-rw-rw-rw-. 1 apache apache 3466 Jan 23 17:15 wp-config.php
-rw-r--r--. 1 apache apache 3177 Nov 1 2010 wp-config-sample.php
drwxr-xr-x. 7 apache apache 4096 Apr 24 20:15 wp-content
-rw-r--r--. 1 apache apache 2718 Sep 23 2012 wp-cron.php
drwxr-xr-x. 9 apache apache 4096 Dec 11 2012 wp-includes
-rw-r--r--. 1 apache apache 1997 Oct 23 2010 wp-links-opml.php
-rw-r--r--. 1 apache apache 2408 Oct 26 2012 wp-load.php
-rw-r--r--. 1 apache apache 29310 Nov 30 2012 wp-login.php
-rw-r--r--. 1 apache apache 7723 Sep 25 2012 wp-mail.php
-rw-r--r--. 1 apache apache 9899 Nov 22 2012 wp-settings.php
-rw-r--r--. 1 apache apache 18219 Sep 11 2012 wp-signup.php
-rw-r--r--. 1 apache apache 3700 Jan 8 2012 wp-trackback.php
-rw-r--r--. 1 apache apache 2719 Sep 11 2012 xmlrpc.php
wordpress.conf file under this directory,
私は通常、WordPress関連のApache設定を独自の/etc/httpd/conf.d/`で管理します。
# wordpress.conf
Alias / "/var/www/wordpress/"
<Directory "/var/www/wordpress/">
Order Deny,Allow
Deny from all
#Allow from 127.0.0.1 192.168.1
Allow from all
AllowOverride all
</Directory>
#RewriteLog "/var/www/wordpress/rewrite.log"
#RewriteLogLevel 3
答え2
(bluegigが私のドメイン名なのになぜそこにいるのかわかりません...)
なぜかブルーギグ(blugig)というグループがあるようだ。以下で確認できます。
grep bluegig /etc/group
グループ権限を使用することは、たとえば777を使用しない1つの方法です。サーバーが実行するスクリプトを読み取りおよび実行可能にしますが、書き込みは不可能にしたい場合がありますが、権限のない管理/開発ユーザー()に書き込みアクセス権を付与したい場合がありますdave
。サーバーは で実行されるため、apache
ファイルが apache が属せず、 に属するグループに属し、dave
権限が 775 の場合、次のような結果が得られます (apache は読み込み、実行でき、dave は読み書き実行を読み取ることができます)。
/etc/groupの行にApacheが記載されていない場合は、bluegigをグループとして使用するか、新しいグループ(groupadd
)を作成できます。自分をグループに参加させる:
usermod -a -G bluegig dave
これで、ログイン名が/ etc / groupエントリの最後に表示され、bluegig
bluegigグループと同じ権限を持つようになります。