web-dev-qa-db-ja.com

カスタムディレクトリを追加する方法(例) phpmyadmin?

Apacheについての私の知識は最小限です。私はそれを成長させたいので、私はLAMPでより多くの経験を持つでしょう。今日の私のホットな質問は:

カスタムディレクトリをWebサーバーに追加する方法(例:phpmyadmin)?

私の目標は、カスタムWebサイトを含むカスタムアドレスを作成できるようにすることです。 /media/my/web/portal1にカスタムディレクトリがあり、クライアントが呼び出したときにそれをロードしたいとします。

http://localhost/myportal1 at webbrowser. 

説明の少ない言葉でステップのリストを教えてもらえますか?

11
Adrian K.

Apache構成ファイルを編集して、Aliasディレクティブを追加します。たとえば、defaultファイルを使用してみましょう。

Sudo -e /etc/Apache2/sites-available/default

VirtualHostディレクティブ内にセクションを追加して、エイリアスを作成します。

Alias /database/ "/usr/share/php5/phpmyadmin/"
<Directory "/usr/share/php5/phpmyadmin/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>

保存して再起動:Sudo /etc/init.d/Apache2 restart

または、他の参照用:

Sudo -e /etc/Apache2/sites-available/default

そして内容...

Alias /myportal1/ "/media/my/web/portal1/"
<Directory "/media/my/web/portal1/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>

保存して再起動:Sudo /etc/init.d/Apache2 restart

次のようなDirectoryディレクティブ内にディレクティブを追加します

Options Indexes FollowSymLinks 

http://httpd.Apache.org/docs/2.2/mod/core.html#directory を参照してください

あれは何を求めていたの?

25
user8290

より簡単な代替方法は、ドキュメントルートからソフトリンクを作成することです。たとえば、ドキュメントのルートが「/ var/www」(ほとんどのLinuxシステムのデフォルト)である場合、次のコマンドがトリックを実行します。

Sudo ln -s /media/my/web/portal1 /var/www/myportal1

これはすぐに動作します-Apacheサーバーをリロードする必要さえありません。

5

Apacheは、ログインできないことを除いて、あなたと同じようにシステムのユーザーです。つまり、Apacheでもファイルアクセスはまったく同じです。したがって、最初に、Apacheが/ media/somethingのディレクトリを提供する場合、Apacheはそのファイルとそのファイルを読み取るためのアクセス権を持っている必要があります。

次に、このディレクトリをホームとして使用するサイトをセットアップするには、/ etc/Apache2/sites-available/your-siteなどのサイトファイルを作成します。これは、いわゆるvhostingの一部です。 2つの異なるタイプがあります。 1つは名前(ドメイン名)に基づいており、もう1つはIPに基づいています。最も一般的な設定は、名前ベースの仮想ホストを使用することです。詳細については、こちらをご覧ください: http://httpd.Apache.org/docs/2.2/vhosts/

1

とてもシンプルな2行:

Sudo ln -s /etc/phpmyadmin/Apache.conf /etc/Apache2/conf.d/phpmyadmin.conf

ファイル「phpmyadmin.conf」を編集するだけです

pico /etc/Apache2/conf.d/phpmyadmin.conf

そして、それを「loool」などに変更します:)

Alias /loooool /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>

SetEnvIfNoCase User-Agent "^ZmEu" bad_bot
SetEnvIfNoCase User-Agent "^BackDoorBot" bad_bot
SetEnvIfNoCase user-agent "^BlackWidow" bad_bot 
SetEnvIfNoCase User-Agent "^BotALot" bad_bot

このすべての後、Apache:Dをリロード

service Apache2 reload

tadaaa:D ciao :)

0
ucefkh