VPSを借りる [PHP] #3


PHP

※How to Install PHP on CentOS 8

DOMAIN=yourdomain

sudo dnf install @php php-opcache php-gd

php -v

sudo systemctl enable --now php-fpm

sudo cp -p /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.origin
sudo sed -i -e "s/^user = apache/user = nginx/g" /etc/php-fpm.d/www.conf
sudo sed -i -e "s/^group = apache/group = nginx/g" /etc/php-fpm.d/www.conf
diff -u /etc/php-fpm.d/www.conf.origin /etc/php-fpm.d/www.conf

sudo chown -R root:nginx /var/lib/php
sudo systemctl restart php-fpm

sudo tee /var/www/$DOMAIN/public_html/index.php << EOF
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to $DOMAIN</title>
  </head>
  <body>

    <?php echo '<h1>Success! $DOMAIN home page! written in PHP!</h1>'; ?> 
  </body>
</html>
EOF

sudo tee /var/www/$DOMAIN/public_html/phpinfo.php << EOF
<?php
    phpinfo();
?>
EOF

sudo tee /var/www/$DOMAIN/public_html/mbinfo.php << EOF
<?php
    print_r(mb_get_info());
?>
EOF

sudo chown -R nginx: /var/www/$DOMAIN
sudo restorecon -RF /var/www/$DOMAIN/public_html/

sudo tee /etc/nginx/conf.d/$DOMAIN.conf << EOF
server {
    listen 80;
    listen [::]:80;

    server_name www.$DOMAIN $DOMAIN;

    include snippets/letsencrypt.conf;

    location / {
        return 301 https://\$host\$request_uri;
    }
}

server {
    listen 443 ssl http2;

    server_name www.$DOMAIN $DOMAIN;

    ssl_certificate /etc/letsencrypt/live/$DOMAIN/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/$DOMAIN/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/$DOMAIN/chain.pem;

    include snippets/ssl.conf;

    root /var/www/$DOMAIN/public_html;

    index index.php;

    access_log /var/log/nginx/$DOMAIN.access.log;
    error_log /var/log/nginx/$DOMAIN.error.log;

    location ~ \.php\$ {
        try_files \$uri =404;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
        include fastcgi_params;
    }
}
EOF

sudo nginx -t

sudo systemctl reload nginx
systemctl status nginx


VPSを借りる [VPS、SSH、Nginx] #1
VPSを借りる [HTTPS] #2