debian 部署wordpress
前言
鉴于我的树莓派系统是debian, 而我又很少动它,所以在折腾一圈之后,还是决定使用树莓派来搭载个人博客系统。
博客界最靓的仔莫过于大名鼎鼎的wordpress了,所以我就使用它来做我的博客系统。
而在LAMP和LNMP两种架构中,我还是选了LNMP,毕竟想熟悉一下nginx ??
?
正文
废话不多说,我们开撸~
从官网下载wordpress包,并上传到服务器。
1.1 登录wordpress官网,然后下载最新包。
? 1.2 将这个包上传到服务器。方法很多,不示范了。
?
?
2. 安装nginx,看情况修改启动用户。debian默认使用www-data进行启动,可根据自身情况在/etc/nginx/nginx.conf文件中进行修改。
apt install -y nginx vim /etc/nginx/nginx.conf #可选 nginx -c /etc/nginx/nginx.conf
?
访问你机器的80端口,看看服务是否起来。如果起来的话,应该有nginx的默认页面。
?
?
3. 安装php-fpm,将php-fpm的启动用户设置为nginx的启动用户。鉴于我用的是默认用户,所以就是www-data用户。
apt install -y php-fpm #默认安装的是php7
修改/etc/php/7.0/fpm/pool.d/www.conf,
[www] user = www-data #修改启动用户 group = www-data #修改启动用户组 listen = 127.0.0.1:9000 #指定监听端口,默认9000 listen.owner = www-data #监听用户 listen.group = www-data #监听用户组 listen.mode = 0660 #监听权限为660 pm = dynamic pm.max_children = 5 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3
启动php-fpm服务。
systemctl start php7.0-fpm.service systemctl enable php7.0-fpm.service
检查9000端口是否在监听状态,是否可以telnet。
ss -tanl|grep 9000 telnet localhost 9000
?
?
4. 解压wordpress的压缩包,并将所有文件修改属主为nginx的启动用户。
unzip latest.zip chown -R www-data:www-data wordpress cd wordpress mv * /usr/share/nginx/html chown www-data:www-data /usr/share/nginx/html
可以看到,解压后的包还是很多的,而我就将其放在了/usr/share/nginx/html下。
?
?
添加nginx的配置,在/etc/nginx/sites-available中添加配置文件,用来配置wordpress的转发规则。
server { listen 81; server_name 你的域名或ip; root /usr/share/nginx/html; access_log /var/log/wordpress_access.log; error_log /var/log/wordpress_error.log; location / { # index index.html index.htm index.php; index index.php; try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { try_files $uri =404; fastcgi_pass localhost:9000; #fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
由于我这个是电信网络,所以一些敏感的端口(80/8080/443)都被封掉了。不得已只好使用其他端口了。
配置完毕之后,重载nginx服务。
nginx -s reload
修改wordpress相关配置,修改/usr/share/nginx/html/wp-config.php
#数据库相关配置 define(‘DB_NAME‘, ‘wordpress‘); define(‘DB_USER‘, ‘wordpress‘); define(‘DB_PASSWORD‘, ‘你的数据库密码‘); define(‘DB_HOST‘, ‘localhost‘); define(‘DB_CHARSET‘, ‘utf8‘); define(‘DB_COLLATE‘, ‘‘); #开启wordpress的debug define(‘FORCE_SSL_LOGIN‘, true); define(‘FORCE_SSL_ADMIN‘, true); define("FS_METHOD", "direct"); define("FS_CHMOD_DIR", 0777); define("FS_CHMOD_FILE", 0777);
? 然后在数据库中建立wordpress数据库
mysql -uroot -p create database wordpress;
访问ip:port, 应该就会出现安装界面了。