溫馨提示×

LNMP在Debian上的最佳實踐有哪些

小樊
45
2025-05-24 07:46:41
欄目: 智能運維

LNMP是指Linux、Nginx、MySQL和PHP組成的網站架構,常用于中小型網站服務。在Debian上配置LNMP環境時,以下是一些最佳實踐:

安裝Nginx

  • 更新系統包列表:首先,確保你的系統包列表是最新的:
    sudo apt update
    
  • 安裝Nginx:使用以下命令來安裝Nginx:
    sudo apt install nginx
    
  • 啟動并啟用Nginx服務
    sudo systemctl start nginx
    sudo systemctl enable nginx
    
  • 驗證Nginx安裝:你可以通過訪問服務器的IP地址或域名來驗證Nginx是否安裝成功。

安裝MySQL/MariaDB

  • 安裝MySQL或MariaDB:這里以MariaDB為例:
    sudo apt install mariadb-server mariadb-client
    
  • 啟動并啟用MariaDB服務
    sudo systemctl start mariadb
    sudo systemctl enable mariadb
    
  • 運行安全腳本:以設置root密碼和其他安全選項:
    sudo mysql_secure_installation
    

安裝PHP

  • 安裝PHP及其常用模塊
    sudo apt install php-fpm php-mysql
    
  • 配置PHP-FPM以使用Nginx
    • 編輯PHP-FPM配置文件:
      sudo nano /etc/php/7.4/fpm/pool.d/www.conf
      
    • 找到listen行,修改為:
      listen /run/php/php7.4-fpm.sock
      
    • 保存并退出編輯器,然后重啟PHP-FPM服務:
      sudo systemctl restart php7.4-fpm
      

配置Nginx以處理PHP請求

  • 編輯Nginx默認站點配置文件
    sudo nano /etc/nginx/sites-available/default
    
  • 修改以下內容
    server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/html;
        index index.php index.html index.htm index.nginx-debian.html;
        server_name _;
        location / {
            try_files $uri $uri/ =404;
        }
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        }
        location ~ /\.ht {
            deny all;
        }
    }
    
  • 測試Nginx配置并重啟服務
    sudo nginx -t
    sudo systemctl restart nginx
    

創建一個簡單的PHP文件進行測試

  • 創建一個簡單的PHP文件
    sudo nano /var/www/html/index.php
    
  • 添加以下內容
    <?php
    phpinfo();
    ?>
    
  • 保存并退出編輯器,然后在瀏覽器中訪問你的服務器IP地址或域名,你應該能看到PHP信息頁面。

優化LNMP性能

  • Nginx優化
    worker_processes auto;
    worker_cpu_affinity auto;
    worker_rlimit_nofile 65535;
    http {
        sendfile on;
        sendfile_max_chunk 512k;
       關閉壓縮;
        fastcgi_read_timeout 300000;
        tcp_nodelay on;
        keepalive_timeout 65;
        keepalive_requests 100000;
        server_tokens off;
    }
    
  • PHP優化
    opcache.enable=1;
    opcache.interned_strings_buffer=64;
    opcache.max_accelerated_files=10000;
    opcache.memory_consumption=256;
    opcache.save_comments=1;
    opcache.fast_shutdown=1;
    opcache.validate_timestamps=1;
    opcache.fast_shutdown=1;
    
  • Linux優化
    ulimit -n 65535
    sysctl -w net.core.somaxconn=65535
    sysctl -w net.ipv4.ip_local_port_range="1024 65535"
    sysctl -w net.ipv4.tcp_fin_timeout="30"
    sysctl -w net.ipv4.tcp_slow_start_after_idle="0"
    sysctl -w net.ipv4.tcp_fastopen=3
    sysctl -w net.ipv4.tcp_syncookies=1
    sysctl -w net.core.netdev_max_backlog=65535
    sysctl -w net.netfilter.nf_conntrack_max=2097152
    sysctl -w net.netfilter.nf_conntrack_tcp_timeout_fin_wait=60
    sysctl -w net.netfilter.nf_conntrack_tcp_timeout_time_wait=60
    

以上步驟和優化措施可以幫助你在Debian上成功配置和優化LNMP環境。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女