Vultr云服务器上有很多开箱即用的环境,也可以选择很多系统,打算用它运行Wordpress、Joomla、Drupal、Magento、Opencart,推荐使用Linux系统搭建,本文将演示基于Vultr的Centos 7操作系统的服务器搭建Nginx + Mysql + Php + Php-fpm网站环境,国外称为LEMP (linux + ngnix(engine x) + mysql + php) ,现在就开始吧!
第一步:SSH连接
下载安装Xshell6并打开,点击文件-新建-连接,输入主机名称及IP、端口号默认22输入完成直接点击底部连接
当你看到你的用户名出现时,SSH连接成功!
第二步设置防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=1024-65535/udp --permanent
firewall-cmd --zone=public --add-port=1024-65535/tcp --permanent
firewall-cmd --reload
第三步 升级系统
yum update -y
第四步安装Nginx
(1)设置Nginx源,目前Nginx有2个版本,稳定版本及主力版本,作为IT从业人员,力荐最新主力版本。
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
将以上代码复制张贴进记事本,并重新命名为Nginx.repo,再将nginx.repo通过Xftp上传至/etc/yum.repos.d/目录下。
(2)依次执行命令
sudo yum install yum-utils
sudo yum-config-manager --enable nginx-mainline
sudo yum install nginx
systemctl start nginx
systemctl enable nginx
(3)检查是否安装成功
在浏览器打开服务器公网IP地址回车,看到一下画面,安装成功!
第五步安装数据库MariaDB
(1)设置MariaDB源,根据系统版本悬着合适自己的源:https://downloads.mariadb.org/mariadb/repositories/#distro=CentOS&distro_release=centos7-amd64--centos7&mirror=tuna&version=10.5
# MariaDB 10.5 CentOS repository list - created 2021-04-23 18:40 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
将以上代码复制张贴进记事本,并重新命名为nginx.repo,再将MariaDB.repo通过Xftp上传至/etc/yum.repos.d/目录下。
(2)依次执行命令
sudo yum install MariaDB-server
sudo systemctl start mariadb
sudo systemctl enable mariadb
(3)创建一个数据库,这里以创建joomla数据库为例,字符集设置为 utf8_general_ci
mysql -u root -p
CREATE DATABASE configuration_cn DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'configuration'@'%' IDENTIFIED BY 'configuration_cn';
GRANT ALL PRIVILEGES ON configuration_cn.* TO 'configuration'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
(4)必要的安全设置
mysql_secure_installation
Switch to unix_socket authentication [Y/n]
解释:切换到unix\u套接字身份验证吗?输入 y 表示愿意。
Set root password? [Y/n] y
解释:要设置 root 密码吗?输入 y 表示愿意。
Remove anonymous users? [Y/n] y
解释:要移除掉匿名用户吗?输入 y 表示愿意。
Disallow root login remotely? [Y/n] y
解释:不想让 root 远程登陆吗?输入 y 表示愿意。
Remove test database and access to it? [Y/n] y
解释:要去掉 test 数据库吗?输入 y 表示愿意。
Reload privilege tables now? [Y/n] y
解释:想要重新加载权限吗?输入 y 表示愿意。
第六步安装PHP、Php-fpm等常用扩展,根据具体项目需求安装
(1)安装Remi存储库
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
安装完成后,您将需要运行命令以启用包含您的首选PHP版本的存储库。要检查Remi存储库中可用的PHP 7+版本,请运行:
yum --disablerepo="*" --enablerepo="remi-safe" list php[7-9][0-9].x86_64
您将看到如下输出:
Output
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* remi-safe: mirrors.ukfast.co.uk
Available Packages
php70.x86_64 2.0-1.el7.remi remi-safe
php71.x86_64 2.0-1.el7.remi remi-safe
php72.x86_64 2.0-1.el7.remi remi-safe
php73.x86_64 2.0-1.el7.remi remi-safe
php74.x86_64 1.0-3.el7.remi remi-safe
php80.x86_64 1.0-3.el7.remi remi-safe
在本指南中,我们将安装PHP 7.4,它是当前PHP的最新稳定版本。要启用正确的Remi软件包以安装PHP 7.4,请运行:
sudo yum-config-manager --enable remi-php74
(2)安装php及扩展模块
sudo yum install php php-mysqlnd php-fpm php-common php-zip php-opcache php-xml php-pecl-apcu php-mbstring php-gd php-intl php-curl php-mcrypt php-soap php-bcmath
(3)查看版本
php --version
现在,PHP已成功安装在您的系统上。
第七步配置
(1)创建网站根目录
sudo -u root mkdir /home/configuration/public_html
(2)权限设置
chown -R nginx:root /configuration
chmod -R +s /home/configuration
chmod -R 755 /home/configuration
(3)修改/etc/nginx/nginx.conf文件
在http {}中添加代码
client_max_body_size 200m;
修改线程为自动
worker_processes auto;
(4)修改/etc/php-fpm.d/www.conf文件
user = nginx
group = nginx
listen = /run/php-fpm/www.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
(5)修改网站配置文件/etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost;
set $base /home/configuration;
root $base/public_html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
try_files $fastcgi_script_name =404;
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /home/configuration/public_html;
}
location ~ .php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_buffers 1024 16k;
fastcgi_buffer_size 128k;
client_body_buffer_size 1024k;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# additional config
# favicon.ico
location = /favicon.ico {
log_not_found off;
access_log off;
}
# robots.txt
location = /robots.txt {
log_not_found off;
access_log off;
}
# assets, media
location ~* \.(?:css(\.map)?|js(\.map)?|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv)$ {
expires 7d;
access_log off;
}
# svg, fonts
location ~* \.(?:svgz?|ttf|ttc|otf|eot|woff2?)$ {
add_header Access-Control-Allow-Origin "*";
expires 7d;
access_log off;
}
# gzip
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_types text/plain text/css text/xml application/json application/javascript application/rss+xml application/atom+xml image/svg+xml;
}
第八步性能提升高级配置:
QQ群:556762696 淘宝店: https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111debpgriNV&ft=t&id=608332225321