Debian+Nginx+Php+Wordpress+Maria

2020-08-08  本文已影响0人  豌豆小公主small

首先在国内阿里云,国外Amazon,Google,Azure上免费注册或者购买VPS。
以下是在GOOGLE上免费注册的VPS,操作系统为Debian10上搭建wordpress。

进去VPS,已管理员身份运行,输入命令如下

sudo su

安装编译环境和一些必要工具

apt-get update
apt-get upgrade

Nginx 安装

apt-get install nginx

安装完 默认的web文件夹为 /var/www/html

运行Nginx并检测

systemctl start nginx
curl -I 127.0.0.1

显示如下正常命令

HTTP/1.1 200 OK
Server: nginx/1.13.12
Date: Thu, 31 May 2018 16:39:32 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Mon, 09 Apr 2018 16:01:09 GMT
Connection: keep-alive
ETag: "5acb8e45-264"
Accept-Ranges: bytes

Php7.3 安装

apt-get install php7.3
apt-get install php7.3-fpm php7.3-cgi php7.3-curl php7.3-gd php7.3-xml php7.3-xmlrpc php7.3-mysql php7.3-bz2
apt-get install php7.3-bcmath php7.3-gmp php7.3-mbstring php7.3-readline php7.3-zip

安装MariaDB

apt install mariadb-server

配置Nginx与PHP

打开 php-fpm配置文件 /etc/php/7.3/fpm/php.ini

vim /etc/php/7.3/fpm/php.ini

找到 cgi.fix_pathinfo 参数,改为:

cgi.fix_pathinfo=0

vim 的查找指令

/cgi.fix_pathinfo

查看PHP监听方式

vim /etc/php/7.3/fpm/pool.d/www.conf

打开上面配置文件,找到 user 和 listen
可以看到 PHP 的用户是 www-data,请记住这个用户名

修改Nginx配置文件

打开 Nginx 配置文件:

vim /etc/nginx/nginx.conf

打开配置文件,看第一行

user  www-data;
worker_processes  auto;

这里可以看到第一行的 user 为 www-data,跟 php 一致,如果不一致,我们把它改成与 php 一致。 改为 www-data 。 除此之外,我们把 gzip 功能打开,如果被注释,那么把注释符号(#)去掉即可。

 gzip  on;

下面打开nginx和php相关的配置:

vim /etc/nginx/sites-enabled/default

找到php配置,修改如下:

# pass PHP scripts to FastCGI server
        #
        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
        # 
        #       # With php-fpm (or other unix sockets):
                fastcgi_pass unix:/run/php/php7.3-fpm.sock;
        #       # With php-cgi (or other tcp sockets):
        #       fastcgi_pass 127.0.0.1:9000;
        }
             
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one 
        #
        location ~ /\.ht {
                deny all;
        }
root /var/www/html/wordpress;
server_name wordpress域名

root为wordpress网站根目录
server_name为wordpress域名
配置完php,重启nginx服务

nginx -s reload

检测Nginx和PHP配置

可以看到,在配置文件中,我将 root 路径设置为 /var/www/html/wordpress 。因此,创建该文件夹,添加 PHP 测试文件,并修改用户与用户组为 www-data 。

cd  /var/www/html/
mkdir wordpress
echo -e "<?php\nphpinfo();\n?>" | tee wordpress/index.php
chown -R www-data.www-data wordpress/

打开浏览器,输入IP地址,如果页面显示 PHP 信息,则说明配置成功啦。如果提示了各种错误的话,请仔细检查配置文件。

配置MariaDB

mysql_secure_installation
...
Enter current password for root (enter for none):
...
Set root password? [Y/n] Y
New password: 
Re-enter new password: 
...
Remove anonymous users? [Y/n] Y
...
Disallow root login remotely? [Y/n] Y
...
Remove test database and access to it? [Y/n] Y
...
Reload privilege tables now? [Y/n] Y
...
Thanks for using MariaDB!
cd /etc/mysql/mariadb.conf.d
vi 50-server.cnf
#dend-adress

注释掉绑定IP地址,可以远程访问

如果选中,脚本将重新加载权限表,确保更改立即生效。
所有步骤都会详细解释,建议对所有问题回答“Y”。

为WordPress建立一个数据库

mysql -u root -p
create user 'user_wordpress'@'localhost' identified by 'yourpassword';

user_wordpress 可以改为你喜欢的用户名, yourpassword则是该用户的密码

create database db_wordpress default charset utf8 collate utf8_general_ci;

db_wordpress 可以改为你喜欢的库名,utf8 和 utf8_general_ci 是为了设置该数据库使用的字符集。

grant all privileges on db_wordpress.* to 'user_wordpress'@'localhost' identified by 'yourpassword';
flush privileges;

注意,请记住用户名、密码、以及库名,在配置 WordPress 的时候需要填写

exit

安装WordPress并配置

apt-get install wget 

进入网站根目录,删除原先测试的文件夹,再进行下载

cd /var/www/html
rm wordpress -r
wget http://wordpress.org/latest.tar.gz
tar -zxvf latest.tar.gz

解压缩后,给wordpress根目录赋予www-data用户的读写权限

chown -R www-data.www-data wordpress/

最后打开浏览器输入IP地址或者是域名,完成wordpress配置

上一篇下一篇

猜你喜欢

热点阅读