• ベストアンサー

apacheに詳しい方教えてください

難しい質問ですが apacheでindexファイルを置かないとディレクトリ、リストが表示されますよね? Index of/のhtmlを編集したいんです 試しにアイコンをいじって Index of/というのが 最初は/usr/share/apache/icons/folder.gifなど index of/のアイコンはうまく変えられたんですが このアイコンなどファイル名などが表示されるhtmlがどこにあるかわかりません このとは Index of/自体のhtmlです Name Last modified Size Description 一応、調べて mod_autoindexなどmodがでてきて httpd.cofをみても iconの読み込みパスみたいのしかのってませんでした Index of/のhtmlのソースはどこにあるんでしょうか? 背景色などいろいろ変えたりしてみたいんですが よく知っている人がいたら教えてください

noname#35759
noname#35759

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

  • ベストアンサー
  • heiwa4126
  • ベストアンサー率69% (9/13)
回答No.1

「そんなこと出来るのかなぁ」と思って調べてみたら、OptionsでSuppressHTMLPreamble指定すれば、HeaderNameに<head>から書けるそうです。へー。(参考URL参照)。 背景色を変えるなら、これでカンタンに出来ますね。さらに外部CSSやJavaScriptと組み合わせればもっといろいろ遊べそうです。

参考URL:
http://q.hatena.ne.jp/1134454955
noname#35759
質問者

お礼

自己解決しました IndexOptions SuppressHTMLPreamble に変更し HEADER.htmlを作り 自分の好きなコードを入力して /var/wwwに置いて /etc/init.d/apache reloadでうまくできました てっきりHeaderName /HEADER.htmlなどとやってましたが試行錯誤の結果できました 難点が一つありました index of/ でしか反映されませんでした ほかのディレクトリに移るとHEADER.htmlで設定した背景色など適応されてませんでした

noname#35759
質問者

補足

大変参考になる解答ありがとうございます IndexOptions FancyIndexing NameWidth=*を IndexOptions SuppressHTMLPreamble HeadName /home/ユーザ名/Desktop/hoge.html に書き換えたんですが(httpd.conf) /etc/init.d/apache stop で止めて /etc/init.d/apache startで 再起動したんですがfailedとでて 編集した行がエラーおこしてるみたいです IndexOptions FancyIndexing NameWidth=* SuppressSize などは使えたんですが どこが悪いのでしょうか?

その他の回答 (3)

  • Lean
  • ベストアンサー率72% (435/603)
回答No.4

>それとapache2.0で試しました 質問にあるフッタ行を見ると、使用しているのは2.0.xではなくて2.2.xなんですね。 >Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/4.4.4-8+etch4 mod_perl/2.0.2 Perl/v5.8.8 Server at >バージョンみたいの消す方法はしってますか? フッタ行を出さなくするなら、 ServerSignature off ○ServerSignatureディレクティブ  http://httpd.apache.org/docs/2.2/ja/mod/core.html#serversignature フッタ行に出力される情報を制御したいなら 例) ServerTokens ProductOnly とか。 ただし、ServerTokensディレクティブはHTTPレスポンスヘッダ内のサーバ情報にどこまで含めるかの指定で、Apache 2.0.44以降でフッタ行に表示される内容の制御にも影響してます。 ○ServerTokensディレクティブ  http://httpd.apache.org/docs/2.2/ja/mod/core.html#servertokens ファイル一覧のフッタ行をオリジナルなものしたい場合は、 例) ReadmeName FOOTER.html とか。 ○ReadmeNameディレクティブ  http://httpd.apache.org/docs/2.2/ja/mod/mod_autoindex.html#readmename

noname#35759
質問者

お礼

こんにちわ apache2で試しました ServerTokens ProductOnlyでは多少、文字がでてしまうので READNAME.htmlに好きなフッタ行を記入したら 自分の好みにできました CSSも問題なく使えました けっこうapacheもカスタマイズできたんだと実感しました みなさん、本当、ありがとうございます

  • heiwa4126
  • ベストアンサー率69% (9/13)
回答No.3

> Index of/ でしか反映されませんでした > ほかのディレクトリに移るとHEADER.htmlで設定した背景色など適応されてませんでした ドキュメントルートに例えばcommonディレクトリを作りcommon/HEADER.htmlを置いて、 HeaderName HEADER.html を HeaderName /common/HEADER.html に変えれば、共通ヘッダとして使えます。HEADER.htmlだけだと、そのディレクトリにあるHEADER.htmlを見るわけですね。用途に応じて使い分ければいいと思います。 ついでにmod_autoindexの生成するオリジナルと同じものを作るにはSSI使って、<TITLE>と<BODY>直後の<H1>で<!--#echo var="DOCUMENT_URI" -->を書けばいいです(今試してみました)。

noname#35759
質問者

補足

返信ありがとうございます htmlのほうはうまくいきました apache1.3の環境で試しましたが <hr>などを消す SuppressRunelsなどが使えず apache2.0ではないとダメらしいです SpurrressHTMLPraembleを使うと Name Last modified Size Description などが使えなくなりそうなので それとapache2.0で試しました たぶんapache2.0では IndexIgnore .??* *~ *# RCS CVS *,v *,tとなっているので このままやると/var/www/ないのHEADER.htmlファイルが写ってしまうので IndexIgnore .??* *~ *# HEADER.html HEADER.txt RCS CVS *,v *,t に変えれば平気でした suppressなどで消えなさそうなものがあるんですが Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/4.4.4-8+etch4 mod_perl/2.0.2 Perl/v5.8.8 Server at バージョンみたいの消す方法はしってますか? HEADER.htmlに<address></address>とやっても消えないみたいです

  • v4493p
  • ベストアンサー率45% (25/55)
回答No.2

httpd.confは、分かるのですね。 confの中の 最初の方に DocumentRoot "" var/www/*** "という一行があります。 そこに記載されているデレクトリが、お探しの所だと 思います。

関連するQ&A

  • apacheの起動

    apacheを起動させようとすると Cannot load /usr/local/apache/modules/mod_dav_svn.so into server: /usr/local/apache/modules/mod_dav_svn.so: undefined symbol: dav_xml_get_cdata ってでます。 mod_dav_svn.soが読み込めません、未定義のシンボルが含まれています、と読み取りましたが、どうすればよいでしょう? apacheはhttpd-2.0.59です。 よろしくお願いします。

  • DB接続を行うApacheモジュールをApacheに追加して、Apacheを再起動するとエラー

    皆さんこんにちは。 Apacheモジュールを作りを行っていました。 モジュール内で、 MySQLにコネクションをはり、 queryリクエストの往来を行うだけの単純なものです。 モジュールの作成から次の順序で作業を進めました。 ----------------------------- (1)モジュールの作成 (2)モジュール(1)のmakeを行う -> make成功 (3)モジュールのsoファイルを配置。 /usr/local/apache2/modules/ に make時に作成された モジュールの「soファイル」を配置。 (4)httpd.confの編集 httpd.confに 作成したモジュールのディレクティブを挿入。 LoadModule db_connect_module modules/db_connect.so <Location /db_connect> SetHandler db_connect </Location> (5)Apacheのリスタート ----------------------------- (5)でapacheの再起動を行うと、 次のエラーが表示されました。 httpd: Syntax error on line 96 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_db_connect.so into server: /usr/local/apache2/modules/mod_db_connect.so: undefined symbol: mysql_query ここで不思議だったのは、 確かに、 作成したMySQLに接続するためのApacheモジュール内で、 「mysql_query」を利用していますが、 そのモジュールのmake時には エラーが表示されていなかったし、 make時にエラーが出なかったとおり、 モジュール内のソースでも、 記述した「mysql.h」も正常にインクルードされていると思います。 どうして、 apacheのhttpd.confは 「mysql_query」に関する 上記のエラーを出してくるのでしょうか? どなたか考えられる原因を アドバイスいただけるとありがたい次第です。 以上どうぞ宜しくお願い致します。

  • Apacheモジュールの追加方法

    ./configure --enable-module=so --enable-shared=max --activate-module= src/modules/php4/libphp4.a で、ApacheをLinuxへインストールしたのですが、mod_userdir.soがないというエラーになります。 モジュールを追加するにはどうすれば良いでしょうか? /etc/rc.d/init.d/httpd start Starting httpd: Syntax error on line 217 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/libexec/mod_userdir.so into server: /usr/local/apache/libexec/mod_user dir.so: undefined symbol: ap_os_is_path_absolute 又、Apacheはmodule=maxだとWWWサーバが 重くなるでしょうか?

  • apache/mod_perlの実行エラーについて

    apacheについて質問です。分かる方、どうぞご教授下さい。 httpd.confにmod_perlの設定を記述しない場合、通常どおりapacheが起動するのですが、以下のようにmod_perlの設定を追記するとapacheがエラーで起動しません。 【mod_perlの設定】 PerlModule ModPerl::Registry PerlRequire /usr/lib/perl5/site_perl/5.8.8/startup.pl <Location /cgi-bin> SetHandler perl-script PerlResponseHandler ModPerl::Registry PerlSendHeader On Options ExecCGI </Location> 【apacheのエラー内容】 /usr/local/apache2/bin/httpd: symbol lookup error: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/ServerUtil/ServerUtil.so: undefined symbol: ap_get_server_banner httpd.confのmod_perlの設定については、他のサーバーでは問題なく起動していますので、mod_perlのconfigure時の共有ライブラリの設定に不備があるのではと思っているのですがどう設定すればいいのか分かりません。mod_perlのconfigure時のオプションは以下のようになっています。 【mod_perlのconfigure】 perl Makefile.PL \ > MP_USE_STATIC=1 \ > MP_AP_PREFIX=../httpd-2.0.63 \ > MP_AP_CONFIGURE="--prefix=/usr/local/apache2 --with-mpm=prefork" 以下、grep の実行結果です。 [root@colinux mod_perl-2.0.3]# grep -r ap_get_server_banner /usr/lib/* バイナリー・ファイル/usr/lib/httpd/modules/mod_rewrite.soは一致しました バイナリー・ファイル/usr/lib/httpd/modules/mod_proxy_connect.soは一致しました バイナリー・ファイル/usr/lib/httpd/modules/mod_proxy_ftp.soは一致しました どんな些細なことでも結構ですので、どうかご教授のほど宜しくお願い致します。 【環境】 fedora6 apache2.0.63 mod_perl2.0.4

  • Apache2で仮想ディレクトリ(alias)の設定について

    お世話になります。 下記の環境で社内WEBサーバを構築しています。 OS:CentOS4.4 httpd:Apache2.0.61 httpd.confの内容 ServerRoot "/usr/local/apache" User apache Group apache DocumentRoot "/usr/local/apache/htdocs" <Directory "/usr/local/apache/htdocs"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> Alias /icons/ "/usr/local/apache/icons/" <Directory "/usr/local/apache/icons"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory> Alias /info/ "/home/info/" <Directory "/home/info"> AllowOverride None Order allow,deny Allow from all </Directory> 上記のようなhttpd.confを書いて、 "/home/info/"以下のファイルに"www.example.co.jp/info/"で アクセスしたいと考えています。 しかしブラウザから確認をすると、 You don't have permission to access /info/index.htm on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request. のエラーが表示されます。(当然、希望するページは表示されません) 実際のディレクトリのパーミッションも確認しましたが、設定されているように思えます。(私の知識不足、誤認識であれば指摘ください。) drwxr-xr-x 6 root root /home drwxrw-r-x 2 info apache /home/info "/home/info"には766・755・744のどれをあてても同じ結果です。 また、"/home/info"以下のファイル"index.htm"は存在を確認し、 パーミッションも下記のように確認しています。 -rwxr-xr-x 1 root root index.htm ファイルの所有者・グループは"root"になっていますが、これはテスト的に作成したもので、実際の運用は"info"ユーザで作成されます。 httpd.confやパーミッションの設定で間違っているところがあれば ご指摘をおねがいいたします。 また情報が不足していましたら、補足に載せますのでご指摘をお願いします。

  • SentOSでapacheとtomcatの連携

    いつもお世話になっております。 Linuxを始めて使っています。 仕事でapache2.2.4とtomcat5.5をインストールして連携させようしています。 ネットで色々とやり方を調べたところ Apache2.2よりmod_proxy-ajpモジュールとして提供されるようになり、別途設定ファイル を用意する事なくhttpd.confにて設定を行うだけということがわかりこの方法でやろうと思っています。 しかし、apache2.2.4をインストールしても/usr/local/apache2/modulesの中にはhttpd.expしか存在していません。 modulesの中にmod_proxy-ajpモジュールなどがあると思っているのですがこの考えは正しいでしょうか? 違っていればご指摘ください。 上記が正しかったとして私が行っているapache2.2.4のインストール手順を以下に記載します。 以下suを実行して管理者で行います。 (1)wgetでapacheをダウンロードする。 wget http://www.meisei-u.ac.jp/mirror/apache/httpd/httpd-2.2.4.tar.gz (2)/usr/local/srcでダウンロードしたファイルを展開する。 tar xvfz httpd-2.2.4.tar (3)コンパイル前設定を行う ./configure --prefix=/usr/local/apache2 --enable-proxy --enable-proxy-ajp --enable-so (4)makeでコンパイルする。 make (5)インストールする。 make install 以上です。 これで/usr/local/apache2/modulesにmod_proxy-ajpができると思っているのですが、存在しません。 ネットで調べると皆さんこのようにし上手くいっているようなのですが・・・。 全くの初心者ですのでLinuxを知っている方にとって常識なことでも わからない部分があるので色々とご教授いただければと思います。 よろしくお願いします。

  • apache2.0.64に後からmod_sslを入れているのですが…

    apache2.0.64に後からmod_sslを入れているのですが… apache2.0.64に後からmod_sslを入れているのですが、うまくいかず困っています。 apache2.0.64を導入後にSSLが必要になったので下記サイトを参考にしてあとからmod_sslを入れようと試みています。 http://d.hatena.ne.jp/hiro_nemu/20090516/1242436684 apacheはすでに起動してのですが、導入後はapachectlでstopできなくなりました。 原因はLoadModule ssl_moduleがloadできないようでコメントアウトすると今までどおりapacheを起動できます。 起動時のエラーは以下の通りです。 Syntax error on line 268 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/mod_ssl.so into server: /usr/local/apache/modules/mod_ssl.so: undefined symbol: ssl_cmd_SSLMutex ここからどうしていいかわからない状態です。 何でもかまわないのでご教授ください。

  • Apache1.33 PHP4.3.9 でApacheが起動できない

    ■環境 Microsoft Virtual PC 上でFreeBSD動作(WindowsXP Serviec Pack 2) FreeBSD4.10 Apache1.3.3 PHP4.3.9 PostgreSQL8.2.4 ○Apache1.3.3のインストール ./configure --enable-shared=max --enable-module=most make make install ○PHP4.3.9のインストール ./configure --without-mysql --with-apxs=/usr/local/apache/sbin/apxs --enable-mbstring --with-pgsql make make install cp php.ini-dist /usr/local/lib/php.ini ○/usr/local/apache/etc/httpd.conf の内容 ----------------------------------------------------------- # Example: # LoadModule foo_module libexec/mod_foo.so LoadModule env_module libexec/mod_env.so LoadModule config_log_module libexec/mod_log_config.so LoadModule mime_magic_module libexec/mod_mime_magic.so LoadModule mime_module libexec/mod_mime.so LoadModule nagotiation_module libexec/mod_nagotiation.so LoadModule status_module libexec/mod_status.so LoadModule info_module libexec/mod_info.so LoadModule includes_module libexec/mod_include.so LoadModule autoindex_module libexec/mod_autoindex.so LoadModule dir_module libexec/mod_dir.so LoadModule cgi_module libexec/mod_cgi.so LoadModule asis_module libexec/mod_asis.so LoadModule imap_module libexec/mod_imap.so LoadModule action_module libexec/mod_actions.so LoadModule speling_module libexec/mod_speling.so LoadModule userdir_module libexec/mod_userdir.so LoadModule proxy_module libexec/mod_libproxy.so LoadModule alias_module libexec/mod_alias.so LoadModule rewrite_module libexec/mod_rewrite.so LoadModule access_module libexec/mod_access.so LoadModule auth_module libexec/mod_auth.so LoadModule anon_auth_module libexec/mod_auth_anon.so LoadModule dbm_auth_module libexec/mod_auth_dbm.so LoadModule digest_module libexec/mod_digest.so LoadModule cern_meta_module libexec/mod_cern_meta.so LoadModule expires_module libexec/mod_expires.so LoadModule headers_module libexec/mod_headers.so LoadModule usertrack_module libexec/mod_usertrack.so LoadModule unique_id_module libexec/mod_unique_id.so LoadModule setenvif_module libexec/mod_setenvif.so LoadModule php4_module libexec/libphp4.so # Reconstruction of the complete module list from all available modules # (static and shared ones) to achieve correct module execution order. # [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO] ClearModuleList AddModule mod_env.c AddModule mod_log_config.c AddModule mod_mime_magic.c AddModule mod_mime.c AddModule mod_nagotiation.c AddModule mod_status.c AddModule mod_info.c AddModule mod_include.c AddModule mod_autoindex.c AddModule mod_dir.c AddModule mod_cgi.c AddModule mod_asis.c AddModule mod_imap.c AddModule mod_actions.c AddModule mod_speling.c AddModule mod_userdir.c AddModule mod_proxy.c AddModule mod_alias.c AddModule mod_rewrite.c AddModule mod_access.c AddModule mod_auth.c AddModule mod_auth_anon.c AddModule mod_auth_dbm.c AddModule mod_digest.c AddModule mod_cern_meta.c AddModule mod_expires.c AddModule mod_headers.c AddModule mod_usertrack.c AddModule mod_unique_id.c AddModule mod_so.c AddModule mod_setenvif.c AddModule mod_php4.c AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps ------------------------------------------------ 以下のコマンドでapacheを起動しようとすると /usr/local/apache/sbin/apachectl start 下記のエラーが発生してしまいます。どうか解決策を教えてください。 /usr/local/apache/sbin/apachectl start Syntax error on line 26 of /usr/local/apache/etc/httpd.conf Cannot load /usr/local/apache/libexec/mode_env.so into server : /usr/local/apache/ libexec/mod_env.so: Undefined symbol "ap_palloc" /usr/local/apache/sbin/apachectl start: httpd could not be started

  • Apache1.3にmod_sslを追加インストール

    こんにちは。 まず、Apacheをインストールします。 tar zxvf apache1.3.33.tar.gz cd apache1.3.33 ./configure --enable-shared=max make make install このあとに、mod_sslを追加しようと思いインストールします。 tar zxvf mod_ssl-2.8.24-1.3.33.tar.gz cd mod_ssl-2.8.24-1.3.33 ./configure --with-apache=../apache1.3.33 --enable-ssl=/usr/local --enable-shared=max cd ../apache1.3.33 make make certificate make install そうすると下記のエラーになってしまいます。 [root@localhost apache_1.3.33]# /usr/local/apache/bin/apachectl startssl [Sat Sep 10 23:28:58 2005] [warn] Loaded DSO libexec/mod_mmap_static.so uses plain Apache 1.3 API, this module might crash under EAPI! (please recompile it with -DEAPI) ※途中削除 Syntax error on line 226 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/libexec/mod_rewrite.so into server: /usr/local/apache/libexec/mod_rewrite.so: undefined symbol: dbm_fetch /usr/local/apache/bin/apachectl startssl: httpd could not be started Apacheが入ってない状態で、mod_sslをインストールすれば上手くいくのですが。 どうしてこういうエラーが出てしまうのでしょうか? よろしくお願いします。

  • Apache 2.2がエラーで起動できない

    以前よりmod_layoutの導入に四苦八苦していましたが、以下のサイト様で配布しているApache 2.2 with mod_layoutというファイルをインストールしたところ、正常にインストールされました。 ttp://fetus.k-hsu.net/document/webmaster/diary2/20060315.html ところが、httpd.confに LoadModule layout_module modules/mod_layout.so AddModule mod_layout.c を追加してApacheを再起動させると Starting httpd: Apache 1.3 configuration directives found please read /usr/share/doc/httpd-2.2.2/migration.html                               [FAILED] となってしまい、再起動できませんでした。 このエラーが何を意味しているのか、どの様な解決方法があるかなど、情報をお持ちの方、ご教授いただけると幸いです。 サーバー情報 OS:FedoraCore5 Apache 2.2 mod_layout-4.0.1a