質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • CentOS

    2708questions

    CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

  • Apache

    1817questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

CentOS7 apache2.4 index.htmlの場所の変更

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 252

Yukj

score 4

Documentrootの変更ががうまくいきません。
やりたいことindex.htmlファイルの読み込み場所を変更したい
var/www/html/index.html

var/www/wp/index.htmlに変更したい

httpd.confの内容(デフォルト)
DocumentRoot "/var/www/html">
<Directory "/var/www">
<Directory "/var/www/html">
Options Indexes FollowSumLinks
.......
</Directory>


を次のように変更
DocumentRoot "/var/www/wp"
<Directory "/var/www/wp">
apache再起動後(stop&startも実行してみる)
/var/www/html/index.htmlの内容が表示される。
再起動ができていないのかと疑ってみて
systemctl stop httpd
アクセス拒否確認
systemctl start httpd
アクセス可の確認をしてみた。
しかし、変わらずの
html/index.htmlの内容が出て来る。本来ならこれで変更が可能だったと思いますが違いますか???
ーーーーーーーーーーーーーーーーーーーーーー
次ぎも以下のように変更してみた
<Directory "/var/www/wp">
Options Indexes FollowSumLinks
.......
</Directory>
すると
testing 123ページが表示されます
testing 123には
You should add your website content to the directory /var/www/html/
と表記されています.....
つまりパスは/var/www/htmlを読み込んでいるのではないのかと思ったため
httpd.confの他に何があるのかを見てみる
httpd.conf  httpd.conf.org  httpd.confwp  magic
となっている
未だに解決が出来ず......

ーーーーーーーーー質問の修正内容、追加内容ーーーーーーーーーーーーーーーーーーーーーーーー
試してみたことが記入されていなかったり誤字があったことお詫びいたします。
質問修正内容
"の追加
DocumentRoot "/var/www/wp" 
ディレクトリ修正
<Directory "/var/www/wp">
その他詳細に記入


試してみたこと確認したこと
1
SElinuxの一時停止
setenforce 0
permissiveに変更
2
SElinuxの停止
vi /etc/selinux/config
SELINUX=enforcing
再起動(reboot)
3
chownで所有者変更
htmlがapache:apacheとなっていたため同じように変更
wp/index.htmlも同じように変更
lsで確認
drwxr-xr-x. 2 apache apache   40  7月 29 08:35 html
drwxr-xr-x. 2 apache apache   24  7月 29 08:35 wp
-rwxrwxrwx. 1 apache apache 43  7月 29 08:35 index.html
4chmod権限変更
取り敢えず777にしてみた
ls結果
-rwxrwxrwx. 1 apache apache 43  7月 29 08:35 index.html
5
chconでセキュリティコンテキスト変更
www/htmlと同じようにしてみた
drwxr-xr-x. apache apache system_u:object_r:httpd_sys_content_t:s0 html
drwxr-xr-x. apache apache system_u:object_r:httpd_sys_content_t:s0 wp


追加事項
デフォルト設定での動作確認OK
29日のログ
error_log-20180729ファイル
[authz_core:error] [pid 2004] [client 192.168.100.167:40694] AH01630: client denied by server configuration: /var/www/html/
これは
welcom.confの
LocationMatch "^/+$">
Options -Indexes
ErrorDocument 403 /.noindex.html
</LocationMatch>
をコメントアウトした時のログだと思われます
31のerrorログ内容(welcom.confコメントアウト後)
e Jul 31 21:21:00.760963 2018] [mpm_prefork:notice] [pid 1918] AH00170: caught SIGWINCH, shutting down gracefully
[Tue Jul 31 21:21:02.727741 2018] [core:notice] [pid 1945] SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0
[Tue Jul 31 21:21:02.729456 2018] [suexec:notice] [pid 1945] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Jul 31 21:21:02.785191 2018] [auth_digest:notice] [pid 1945] AH01757: generating secret for digest authentication ...
[Tue Jul 31 21:21:02.786424 2018] [lbmethod_heartbeat:notice] [pid 1945] AH02282: No slotmem from mod_heartmonitor
[Tue Jul 31 21:21:02.821366 2018] [mpm_prefork:notice] [pid 1945] AH00163: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.4.16 configured -- resuming normal operations
[Tue Jul 31 21:21:02.821433 2018] [core:notice] [pid 1945] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
[Tue Jul 31 21:21:08.939653 2018] [authz_core:error] [pid 1946] [client 192.168.100.167:49336] AH01630: client denied by server configuration: /var/www/html/


  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • angel_p_57

    2018/07/30 19:52

    何となく設定内容的には合ってるように見えますが、/var/wp とか、素で間違えているのか転記ミスなのか判断し辛いです。推定と期待と事実も見分けがつくようにお願いします。例えば設定の変更点は、diff -u コマンドの結果をそのまま貼るとか ( Markdownのブロック表記 ``` も )。それから、何はともあれログの中身は確認してください。/var/log/httpd あたりにアクセスログ・エラーログがあると思いますので。

    キャンセル

回答 2

checkベストアンサー

0

うーん…。マジでDocumentRootの変更が反映されてないっぽいですね。
ひょっとしてSSL等でバーチャルホストを使ってる、とかじゃないですよね…。( バーチャルホスト毎にDocumentRootがあるため )

設定した内容が意図通り認識されているかを見るため、コマンドラインでダンプして確認する、くらいでしょうか。httpd -t -D DUMP_CONFIGで、Apacheの認識している設定内容 ( 各設定ファイルの内容の連結 ) が出るので、それを見てみるとか。

# /usr/sbin/httpd -t -D DUMP_CONFIG 2>/dev/null | grep -n -B 1 '^# In'
※設定のどの部分がどのファイル由来かを見る
# /usr/sbin/httpd -t -D DUMP_CONFIG 2>/dev/null | grep -n -i documentroot
※DocumentRootの設定を見る

なお、

testing 123ページが表示されます
testing 123には
You should add your website content to the directory /var/www/html/
と表記されています.....

そえはステータス403に対応した固定コンテンツ(確か/usr/share/httpd/...あたりにhtmlファイルがあったはず)なので、その細かい内容を気にしてもしようがないです。
ただ、そのページが出るということは403と認識されている、と。そこが重要です。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/08/03 21:17

    はい
    なぜかはわかりませんが解決しました。
    結果から言うと理由がわかりません。(ごめんなさい)
    angel_p_57さんの通にhttpd -t -D DUMP_CONFIG 2>/dev/null | grep -n -B 1 '^# In'で見てみましたが特におかしいと思ったところはなく
    1:# In file: /etc/httpd/conf/httpd.conf
    --
    84-EnableSendfile on
    85:# In file: /etc/httpd/conf.d/autoindex.conf
    --
    158-IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
    159:# In file: /etc/httpd/conf.d/php.conf
    --
    172-php_value session.save_path "/var/lib/php/session"
    173:# In file: /etc/httpd/conf.d/ssl.conf
    --
    220-</VirtualHost>
    221:# In file: /etc/httpd/conf.d/userdir.conf
    --
    232-</Directory>
    233:# In file: /etc/httpd/conf.d/welcome.conf


    ...諦めて一日何もせずに今日起動してみたらちゃんと変更されていました。
    すっきりせずに解決してしまいまして...申し訳ございません。
    angel_p_57さん本当にありがとうございました

    キャンセル

0

Apache自体の設定ではなく、SELinux的な問題である可能性もあるので、以下の情報を。

RedHatのドキュメントSELinux ユーザーおよび管理者のガイド 4.6章に、SELinuxに関するファイルのラベル付けの話があって、特に手順4.9に、Apcheのドキュメントルートを変える時の操作例が載っています。

SELinuxを有効にしている場合はご参照を。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.51%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • CentOS

    2708questions

    CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

  • Apache

    1817questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。