[尝试安装Laravel-admin!第2部分] 在CentOS Stream8上安装Nginx和PHP

    1. [Laravel-admin安装教程!第1部分] 在ConoHa VPS上安装CentOS Stream8并通过VSCode进行SSH连接 – Qiita

[Laravel-admin安装教程!第2部分] 在CentOS Stream8上安装Nginx和PHP – Qiita ←本文

[Laravel-admin安装教程!第3部分] 在CentOS Stream8上安装Laravel9(PHP8、Nginx、MariaDB) – Qiita

[Laravel-admin安装教程!第4部分] [CentOS Stream8 & Nginx] 使用免费SSL证书”Let’s Encrypt”进行SSL化 – Qiita

[Laravel-admin安装教程!第5部分] 安装Laravel-admin并进行SSL化 – Qiita

概述

這個系列的目標是在搭建在VPS上的CentOS上構建IT資產管理工具。
我們計劃使用Laravel的管理界面庫「Laravel-admin」來實現IT資產管理工具的用戶界面。
在上一篇文章中,我們解釋了如何連接到VPS上的CentOS,通過SSH進行連接。
這一次,我們將安裝Nginx和PHP,並構建Web服務器。

服务器配置

操作系统:CentOS Stream8
Nginx:1.20.2
PHP:8.1.5

预先设置

# タイムゾーンをAsia/Tokyoに変更
sudo timedatectl set-timezone Asia/Tokyo
# selinuxをオフ
sudo grubby --update-kernel ALL --args selinux=0
# 設定を反映させるため再起動
sudo reboot

安装Nginx

我将安装Nginx。

在nginx.repo文件中写入以下内容。

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

安装后,添加防火墙的许可设置。

sudo dnf -y install nginx
sudo systemctl enable nginx
sudo systemctl start nginx
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

更改Nginx的配置

将 nginx.conf 文件按照以下方式进行修改。

user  nginx;
worker_processes  auto;
worker_rlimit_nofile 100000;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  2048;
    multi_accept on;
    use epoll;
}


http {

    server_tokens off;
    include       /etc/nginx/mime.types;
    default_type  text/html;
    charset UTF-8;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile       off;
    tcp_nopush     on;
    tcp_nodelay    on;


    keepalive_timeout 10;
    client_header_timeout 10;
    client_body_timeout 10;
    reset_timedout_connection on;
    send_timeout 10;

    limit_conn_zone $binary_remote_addr zone=addr:5m;
    limit_conn addr 100;

    gzip on;
    gzip_http_version 1.0;
    gzip_disable "msie6";
    gzip_proxied any;
    gzip_min_length 1024;
    gzip_comp_level 6;
    gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript application/json;
    open_file_cache off;

    client_max_body_size 20m;
    server_names_hash_bucket_size 64;
    include /etc/nginx/conf.d/*.conf;
}

安装PHP

# 有効バージョンをリセット
sudo dnf module reset php
# 8.1を有効にする
sudo dnf module enable php:remi-8.1
# PHPと関連ファイルをインストール
sudo dnf install php php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml
# バージョン確認
php -v

修改php-fpm和Nginx的配置

将www.conf改写如下。

user = nginx
group = nginx

# php-fpmを再起動
sudo systemctl restart php-fpm

请按照以下方式修改 index.php 文件。

<?php phpinfo(); ?>

将 default.conf 根据以下内容进行修改。

server {
  listen 80;
  server_name example.jp;
  root   /var/www/html/example.jp/public;
  index index.php index.html index.htm;

  location ~ \.php$ {
    fastcgi_pass   unix:/var/run/php-fpm/www.sock;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME /var/www/html/example.jp/public$fastcgi_script_name;
    include        fastcgi_params;
  }
}

我会重新启动并注册服务。

sudo systemctl restart nginx
sudo systemctl enable nginx
sudo systemctl enable php-fpm

请在浏览器中进行操作确认。

当您使用浏览器访问域名并且显示了phpinfo,那么就表示一切正常。

请参考以下网站

CentOS+Nginx 上运行 Laravel(服务器搭建) | Reuhul 技术备忘录
在 centos stream 9 上安装 nginx 和 php8.1 – Qiita
将 CentOS Stream 8 上的 PHP 7.2 更改为 7.4 – ラボラジアン

广告
将在 10 秒后关闭
bannerAds