Linuxでnginxを起動時に自動起動するよう設定する方法は何ですか?

LinuxシステムでNginxをブート時に自動起動する方法は以下の手順です。1. Nginxのメイン設定ファイルを開きます。ほとんどのLinuxディストリビューションでは、Nginxのメイン設定ファイルは/etc/nginx/nginx.confにあります。テキストエディタ(例えばviやnano)を使用してこのファイルを開いてください。2. 次の行を検索して編集します。

  user www-data;

worker_processes auto;


適切な権限を持つユーザー(例:root)に変更し、Nginxが起動時に管理者権限で実行できるようにする。ファイルを保存して閉じる。3. システムのInitシステムを確認する。現在、2つの主要なInitシステムがあります:SysVとSystemd。以下のコマンドを実行して、そのシステムが使用しているInitシステムを確認してください:

  ps --no-headers -o comm 1

initが出力された場合、システムはSysV Initシステムを使用します。systemdが出力された場合、システムはSystemd Initシステムを使用します。異なるInitシステムに対して、以下の手順を実行します。a. SysV Initシステムの場合:起動スクリプトファイル「/etc/init.d/nginx」を作成し、テキストエディタでファイルを開きます。次の内容をファイルにコピーしてください。

       #! /bin/sh

### BEGIN INIT INFO

# Provides:          nginx

# Required-Start:    $all

# Required-Stop:     $all

# Default-Start:     2 3 4 5

# Default-Stop:      0 1 6

# Short-Description: starts the nginx web server

# Description:       starts nginx using start-stop-daemon

### END INIT INFO

 

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

DAEMON=/usr/sbin/nginx

NAME=nginx

DESC=nginx

 

test -x $DAEMON || exit 0

 

set -e

 

. /lib/init/vars.sh

. /lib/lsb/init-functions

 

case “$1” in

start)

echo -n “Starting $DESC: ”

start-stop-daemon –start –quiet –pidfile /var/run/$NAME.pid \

–exec $DAEMON — $DAEMON_OPTS || true

echo “$NAME.”

;;

stop)

echo -n “Stopping $DESC: ”

start-stop-daemon –stop –quiet –pidfile /var/run/$NAME.pid \

–exec $DAEMON || true

echo “$NAME.”

;;

restart|force-reload)

echo -n “Restarting $DESC: ”

start-stop-daemon –stop –quiet –pidfile \

/var/run/$NAME.pid –exec $DAEMON || true

sleep 1

start-stop-daemon –start –quiet –pidfile \

/var/run/$NAME.pid –exec $DAEMON — $DAEMON_OPTS || true

echo “$NAME.”

;;

reload)

echo -n “Reloading $DESC configuration: ”

start-stop-daemon –stop –signal HUP –quiet –pidfile \

/var/run/$NAME.pid –exec $DAEMON || true

echo “$NAME.”

;;

*)

N=/etc/init.d/$NAME

echo “Usage: $N {start|stop|restart|reload|force-reload}” >&2

exit 1

;;

esac

 

exit 0


ファイルを保存して閉じます。スクリプトファイルの実行許可を設定します。

       sudo chmod +x /etc/init.d/nginx

システムの起動時にNginxを追加します。

       sudo update-rc.d nginx defaults

Systemd Initシステムに関しては、Nginxのサービスファイル`/etc/systemd/system/nginx.service`を作成し、テキストエディタでファイルを開いてください。以下の内容をファイルにコピーしてください。

       [Unit]

Description=Nginx

After=network.target

 

[Service]

ExecStart=/usr/sbin/nginx

ExecReload=/usr/sbin/nginx -s reload

ExecStop=/usr/sbin/nginx -s stop

PrivateTmp=true

 

[Install]

WantedBy=multi-user.target


ファイルを保存して閉じてください。systemdの設定ファイルを再読み込みしてください。

       sudo systemctl daemon-reload

システムにNginxを追加します。

bannerAds