• ベストアンサー

このケース。シンボリックリンクで実現できますか?

レンタルサーバで定番の /home/user/public_htmlが WWWサイトのトップに設定されてます。 しかしこれですといろんなソフトを入れる度に public_htmlフォルダにファイルが増えたり混ざってしまいます。 とりあえず、 /home/user/testsoft/public_htmlを サイトのトップにしてみたく、シンボリックリンクをやってみたのですがうまく張れませんでした。リンクで実現することは可能でしょうか?

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

  • ベストアンサー
回答No.3

#1 です。 サーバ管理者でなくて、試してみたけど出来なかったのであれば『出来ない可能性』が高いですね。サーバ管理者がシンボリックリンク(先の参照を)禁止している場合、.htacess を使っても無理です。 何で(デフォルトでは)禁止されているかというと、例えば % ln -s /etc /home/users/testsoft/public_html が有効に出来ちゃったら、/etc/passwd などの重要なファイルも見えてしまうからなんです。更に言えば性能面でシンボリックリンクを追いかけるのもあまり良くないから、かな。 サーバの管理者の方に「シンボリックリンク使いたいんですけど...」と尋ねてみると良いでしょう。融通の利く(?)管理者であれば何とかしてくれるかもしれませんよ。  

natsuyori
質問者

お礼

大変わかりやすいご説明ありがとうございます。どうりでApacheの設定にもシンボリックリンクを許可するかという設定があるわけですね。素直に諦めて実態をpublic_htmlに置く事にしました。

その他の回答 (2)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

ln -s /home/user/testsoft/public_html /home/user/public_html ということでしょうか?私も似たことをやってみましたが、シンボリックリンクでpublic_htmlより上は見られないようです。ハードリンクなら見られますが、ディレクトリのハードリンクは一般ユーザーでは出来ないので無理ですね。 何故そういうことをしたいのか良くわからないのですが、public_html をホームディレクトリだと思って管理すれば良いのではないのでしょうか?

natsuyori
質問者

お礼

なるほど。public_htmlより上は見れないんですね。みなさん共有サーバではできないようなので、これが普通ということがわかり良かったです。ハードリンクは実体ファイルが大きいので今回は向かない感じです。ありがとうございました。

回答No.1

あなたはサーバの管理者ですか? であれば apache(ですよね?)の httpd.conf を編集することで設定可能です。もし管理者でなければ、管理者に頼まないとできないかもしれません。どちらの立場でしょうか。

natsuyori
質問者

補足

回答ありがとうございます。 私はサーバ管理者ではありません。 WWWサーバの設定という発想はありませんでした。httpd.confを編集できる権限はありませんが、 .htaccessは使えるサーバのようです。 自分で設定する方法ありますでしょうか? よろしくお願いします。

関連するQ&A