GNU/Linux >> Linux の 問題 >  >> Linux

Linux の起動時に Apache を起動するにはどうすればよいですか?

解決策 1:

その init スクリプトを適切な実行レベルに追加します。通常、init スクリプトは /etc/init.d/apache2 です。 /etc/init.d/apache2 start を手動で実行できる場所 開始します。

Gentoo では次のように記述します:

rc-update add apache2 default

Ubuntu/Debian では次のように動作します:

sudo update-rc.d apache2 defaults

Red Hat Linux/Fedora/CentOS では、少しグーグルで調べると次のようになります:

chkconfig --add httpd

ディストリビューションごとに少し異なりますが、考え方は通常同じです。基本的に、これらのコマンドはすべて /etc/init.d/ からシンボリック リンクを作成します。 /etc/ の適切なランレベル フォルダーへ .

解決策 2:

これが最終的に私のために働いたものです。これは、あなたが root ユーザーであることを前提としています。

<オール>
  • vi /etc/init.d/apache2 (以下のように編集)
  • chmod 755 /etc/init.d/apache2
  • chkconfig --apache2 を追加
  • chkconfig --list apache2 (動作を確認するため)
  • /etc/init.d/apache2 の内容:

    #!/bin/bash
    #
    # apache2        Startup script for the Apache HTTP Server
    #
    # chkconfig: 3 85 15
    # description: Apache is a World Wide Web server.  It is used to serve \
    #              HTML files and CGI.
    
    /usr/local/apache2/bin/apachectl [email protected]
    

    /sbin/runlevel を実行することでランレベルを取得できます。私の場合は 3 でした。もちろん、自分のバージョンの apachectl を呼び出す必要があります。私の場合は /usr/local/apache2/bin/apachectl です。

    以下に感謝します:

    • Evan Teran からの回答 +1 のヘルプ
    • Russell Heilling からの回答 + 1 のヘルプ
    • man chkconfig
    • ランレベルに関する情報を含む sysdigg からのこのリンク

    解決策 3:

    httpd があるかどうかを確認します /etc/rc.d の init スクリプト ディレクトリ。はいの場合は、httpd を有効にする次のコマンドを実行できます。 ブート時にサービスを開始します。

    chkconfig --level 345 httpd on
    

    init スクリプトがない場合は、 /etc/rc.local を追加するだけです apachectl -k start のファイル (Apache を起動するコマンド)

    解決策 4:

    ソースからインストールしたため、/etc/init.d/ ディレクトリにインストールされる init スクリプトはありません。 apachectl バイナリは、標準の init スクリプト オプションと互換性があるように設計されているため、ラッパー スクリプトを作成するのではなく、単純にシンボリック リンクすることができます (例:ln -s /usr/local/sbin/apachectl /etc/init.d/ Apache)

    次に、他の投稿で概説されている手順に従って、正しいランレベルで init スクリプトを呼び出すためのリンクを追加できます。

    引用:Apache ドキュメント http://httpd.apache.org/docs/2.2/invoking.html

    <ブロック引用>

    起動時から

    システムの再起動後もサーバーを実行し続けたい場合は、apachectl への呼び出しをシステムの起動ファイル (通常は rc.local または rc.N ディレクトリ内のファイル) に追加する必要があります。これにより、Apache がルートとして起動されます。これを行う前に、サーバーがセキュリティとアクセス制限のために適切に構成されていることを確認してください。

    apachectl スクリプトは、標準の SysV init スクリプトのように機能するように設計されています。引数 start、restart、および stop を取り、それらを httpd への適切なシグナルに変換できます。そのため、多くの場合、apachectl を適切な init ディレクトリにリンクするだけで済みます。ただし、システムの正確な要件を必ず確認してください。


    Linux
    1. LubuntuLinuxでCrontabを使用してスタートアップスクリプトを作成する方法

    2. OracleLinux8にApacheCassandraをインストールする方法

    3. OracleLinux8にApacheMavenをインストールする方法

    1. GentooLinuxで起動およびシャットダウンスクリプトを設定する方法

    2. IP (Linux) からホスト名を取得するには?

    3. Scientific Linux で ldapsearch を取得するには?

    1. Linuxコマンドのスクリプトを作成する方法

    2. RockyLinux8にApacheKafkaをインストールする方法

    3. Linuxでディレクトリサイズを取得する方法