外付けHDDをApacheでAlias付けて見られるように設定する方法
November 13 [Fri], 2015, 10:44
色々な記事を見たがなかなかうまくいかなかったので、うまくいったときはシャルケ戦で2年半ぶりにヘディングを決めた後の香川ばりのガッツポーズしてしまった。#誰も見てない
※2017年5月12日 後日追記あり
0.環境条件
OS: Centos6.6
Apache: 2.2.15
1.外付けHDDのフォーマットをext4にする
(NTFSやext3などで実施したが、結局うまくいかなかった。これが決め手だった ※以下の追記参照)
# mkfs.ext4 /dev/sdd1
参考ページ(devのHDD認識やフォーマットなど)
http://qiita.com/ikuwow/items/c5832fd823e869825c80
--------------------------
※NTFSでもできました。マウントする際に以下のオプションが必要なようです。
#vi /etc/fstab で以下を追記し、
#mount -a でエラーがなくマウントされれば成功
UUID=UUID名 /mnt/ディレクトリ名 ntfs-3g defaults,iocharset=UTF-8,uid=ユーザ名,gid=グループ名,umask=022,context="system_u:object_r:httpd_sys_content_t:s0" 0 2
マウントに必要なUUIDは
# blkid
で調べられます。
--------------------------
2.ext4で外付けHDDをマウントする
# mount -t ext4 /dev/sdd1 /mnt/iodata
一応終わったらext4でマウントされているかどうかを確認する
# mount -t ext4
3.ファイルタイプをApacheで認識できるようにする
※上記の1.後日追記を実施している場合は飛ばして4.へ
# chcon -t httpd_sys_content_t /mnt/iodata
一応終わったらファイルタイプが変更されたか確認する
# ls -lZ /mnt
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 iodata
4.Apacheのconfigファイルで外付けHDDを認識できるように変更する
# gedit /etc/httpd/conf/httpd.conf
Alias /icons/ "/var/www/icons"
・・・
</Directory>
の下らへんに次の構文を記述して保存する
(ここじゃなくてもファイルの最後辺りに記述しても良かったはず)
Alias /hdddata "/mnt/iodata/"
<Directory "/mnt/iodata">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
--------------------------
※virtual hostのときは上記を
<VirtualHost IPアドレス:80>
</VirtualHost>
内に記述する。Aliasは必要に応じて。
--------------------------
5. 一応、外付けHDDにApacheでのアクセス権限を記述する
gedit /mnt/iodata/.htaccess
Order allow,deny
Allow from all
と書いて保存する。
※結局いらなかった
6. Apacheを再起動する
# service httpd restart
または
#/usr/sbin/apachectl restart
などなど
7.テストファイル作成&いよいよアクセス
# gedit /mnt/iodata/test.txt
で適当に
aaaaaaaaaaaaaaaaaaaaaa
とか書いて保存して、
httpd://localhost/hdddata/test.txt
にアクセスする
これでアクセスできたら成功!
8.再起動したあとも設定を反映させる(まだ再起動してないのでここは出来なかったら許してちょ)
# sudo blkid
・・・
/dev/sdd1: UUID"=c8b3ab0c・・・・" TYPE="ext4"
と出て来るので、このUUIDを調べる
次に、
# gedit /etc/fstab
で最後に次を記述して保存する
UUID=c8b3ab0c・・・・ /mnt/iodata ext4 rwx,uid=root,gid=root,context="system_u:object_r:httpd_sys_content_t:s0" 0 0
再起動したときに反映されなかったらここの部分は削除して、あるいは1〜7に沿って毎回マウントし直すか、改善してくださいっす
まぁあとは
#gedit /etc/rc.local
で
chcon -t httpd_sys_content_t /mnt/iodata
と記述しておくとかね
※2017年5月12日 後日追記あり
0.環境条件
OS: Centos6.6
Apache: 2.2.15
1.外付けHDDのフォーマットをext4にする
(NTFSやext3などで実施したが、結局うまくいかなかった。これが決め手だった ※以下の追記参照)
# mkfs.ext4 /dev/sdd1
参考ページ(devのHDD認識やフォーマットなど)
http://qiita.com/ikuwow/items/c5832fd823e869825c80
--------------------------
※NTFSでもできました。マウントする際に以下のオプションが必要なようです。
#vi /etc/fstab で以下を追記し、
#mount -a でエラーがなくマウントされれば成功
UUID=UUID名 /mnt/ディレクトリ名 ntfs-3g defaults,iocharset=UTF-8,uid=ユーザ名,gid=グループ名,umask=022,context="system_u:object_r:httpd_sys_content_t:s0" 0 2
マウントに必要なUUIDは
# blkid
で調べられます。
--------------------------
2.ext4で外付けHDDをマウントする
# mount -t ext4 /dev/sdd1 /mnt/iodata
一応終わったらext4でマウントされているかどうかを確認する
# mount -t ext4
3.ファイルタイプをApacheで認識できるようにする
※上記の1.後日追記を実施している場合は飛ばして4.へ
# chcon -t httpd_sys_content_t /mnt/iodata
一応終わったらファイルタイプが変更されたか確認する
# ls -lZ /mnt
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 iodata
4.Apacheのconfigファイルで外付けHDDを認識できるように変更する
# gedit /etc/httpd/conf/httpd.conf
Alias /icons/ "/var/www/icons"
・・・
</Directory>
の下らへんに次の構文を記述して保存する
(ここじゃなくてもファイルの最後辺りに記述しても良かったはず)
Alias /hdddata "/mnt/iodata/"
<Directory "/mnt/iodata">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
--------------------------
※virtual hostのときは上記を
<VirtualHost IPアドレス:80>
</VirtualHost>
内に記述する。Aliasは必要に応じて。
--------------------------
5. 一応、外付けHDDにApacheでのアクセス権限を記述する
gedit /mnt/iodata/.htaccess
Order allow,deny
Allow from all
と書いて保存する。
※結局いらなかった
6. Apacheを再起動する
# service httpd restart
または
#/usr/sbin/apachectl restart
などなど
7.テストファイル作成&いよいよアクセス
# gedit /mnt/iodata/test.txt
で適当に
aaaaaaaaaaaaaaaaaaaaaa
とか書いて保存して、
httpd://localhost/hdddata/test.txt
にアクセスする
これでアクセスできたら成功!
8.再起動したあとも設定を反映させる(まだ再起動してないのでここは出来なかったら許してちょ)
# sudo blkid
・・・
/dev/sdd1: UUID"=c8b3ab0c・・・・" TYPE="ext4"
と出て来るので、このUUIDを調べる
次に、
# gedit /etc/fstab
で最後に次を記述して保存する
UUID=c8b3ab0c・・・・ /mnt/iodata ext4 rwx,uid=root,gid=root,context="system_u:object_r:httpd_sys_content_t:s0" 0 0
再起動したときに反映されなかったらここの部分は削除して、あるいは1〜7に沿って毎回マウントし直すか、改善してくださいっす
まぁあとは
#gedit /etc/rc.local
で
chcon -t httpd_sys_content_t /mnt/iodata
と記述しておくとかね
- サーバ環境構築 |
- URL |
- Comment [0]