Apache
についての私の知識は最小限です。私はそれを成長させたいので、私はLAMPでより多くの経験を持つでしょう。今日の私のホットな質問は:
カスタムディレクトリをWebサーバーに追加する方法(例:phpmyadmin)?
私の目標は、カスタムWebサイトを含むカスタムアドレスを作成できるようにすることです。 /media/my/web/portal1
にカスタムディレクトリがあり、クライアントが呼び出したときにそれをロードしたいとします。
http://localhost/myportal1 at webbrowser.
説明の少ない言葉でステップのリストを教えてもらえますか?
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 を参照してください
あれは何を求めていたの?
より簡単な代替方法は、ドキュメントルートからソフトリンクを作成することです。たとえば、ドキュメントのルートが「/ var/www」(ほとんどのLinuxシステムのデフォルト)である場合、次のコマンドがトリックを実行します。
Sudo ln -s /media/my/web/portal1 /var/www/myportal1
これはすぐに動作します-Apacheサーバーをリロードする必要さえありません。
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/
とてもシンプルな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 :)