树莓派搭建wordpress站点 (nginx)

本文详细介绍了如何在Linux环境下使用Nginx、PHP、MySQL搭建WordPress博客,包括安装配置步骤及数据库操作,最终实现WordPress的部署。

参考: http://www.guokr.com/post/332043/

安装 Nginx php Mysql

$ sudo apt-get install nginx 
$ sudo apt-get install php5-fpm php5-cli php5-curl php5-gd php5-mcrypt php5-mysql php5-cgi 
$ sudo apt-get install mysql-server

安装时会提示设置mysql的密码

创建 /etc/nginx/site-available/wordpress

$ cd /etc/nginx/sites-available/
$ sudo vim wordpress

在wordpress中输入一下内容

# Upstream to abstract backend connection(s) for php
upstream php {
        server unix:/var/run/php5-fpm.sock;
}

server {

        ## Your only path reference.
        root /srv/www/wordpress/public_html;
        listen          80;
        ## Your website name goes here. Change to domain.ltd in VPS
        server_name     _;

        access_log      /srv/www/wordpress/logs/access.log;
        error_log       /srv/www/wordpress/logs/error.log;

        ## This should be in your http block and if it is, it's not needed here.
        index index.php;

        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }

        location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
        }

        location / {
                # This is cool because no php is touched for static content
                try_files $uri $uri/ /index.php;
        }

        location ~ \.php$ {
                include snippets/fastcgi-php.conf;

                # With php5-cgi alone:
                #fastcgi_pass 127.0.0.1:9000;
                # With php5-fpm:
                fastcgi_pass php;
        }
        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
}                                  

然后做一个软连接,并删除default:

$ cd /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/wordpress wordpress
$ sudo rm default

设置mysql数据库

$ mysql -u root -p
输入安装时设置的密码

mysql> CREATE DATABASE wordpress;
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"localhost" IDENTIFIED BY "raspi";
mysql> FLUSH PRIVILEGES;
mysql> EXIT

上面的操作创建了名字为“wordpress”的数据库,密码为“raspi”。

下载安装wordpress

sudo mkdir -p /srv/www/wordpress/logs/
sudo mkdir -p /srv/www/wordpress/public_html
cd /srv/www/wordpress/public_html
sudo wget https://cn.wordpress.org/wordpress-4.4-zh_CN.tar.gz
sudo tar xzf wordpress-4.4-zh_CN.tar.gz
sudo cp wordpress/* .

创建wp-config.php

$ cd /srv/www/wordpress/public_html/
$ sudo mv wp-config-sample.php wp-config.php
$ sudo vim wp-config.php

修改wp-config.php中的如下内容:

define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'raspi');

大功告成

然后在浏览器输入 http://树莓派IP地址/wp-admin/install.php 验证是否成功

进一步改动

可以将mysql改成sqlite(降低开销) http://www.tuicool.com/articles/fuiyQb
申请免费域名等。

Reset password

WordPress use the bcrypt to save the users password in database. I use sqlite3 database.
How to Generate bcrypt password?
I am using online bcrypt generator. You can search in google/duckduckgo , will find many online generator.
http://bcrypthashgenerator.apphb.com/
I generated ‘password123’ its bcrypt formate is
$2a$10$UvclXkN3qwFqEj7nT2uGBedStIdt4rshca5JSzsj9bygk3U/IA7F6
Reset password to ‘password123’:

# cd /srv/www/wordpress/public_html/wp-content/database
# ls -a
# sqlite3 .ht.sqlite
# update wp_users set user_pass="$2a$10$n0Drn.0vlhSswKAu92uG1OZEV3b2M9nT10koa.FFmwgxt2ECr7f.i" where ID=yourId;

Now, you can login using ‘password123’

Get a global URL

You can use ngrok to get a global url for your local service.
https://ngrok.fengqi.me/index.html

### 配置 Nginx 搭建 Web 服务器 在树莓派上使用 Nginx 搭建 Web 服务器是一个相对简单的过程。以下是详细的说明: #### 安装 Nginx 要开始安装 Nginx,可以通过以下命令完成: ```bash sudo apt update sudo apt install nginx ``` 这会更新包列表并安装最新的 Nginx 版本[^1]。 #### 启动与启用服务 安装完成后,Nginx 应该已经自动启动。如果未启动,则可以手动执行以下操作来启动它: ```bash sudo systemctl start nginx ``` 为了确保每次系统重启时 Nginx 自动运行,还需要执行以下命令: ```bash sudo systemctl enable nginx ``` #### 测试访问 一旦 Nginx 成功安装并正在运行,就可以通过浏览器测试其默认页面。打开浏览器并输入树莓派的 IP 地址或 `localhost` 来查看默认欢迎页。例如: ``` http://<your_raspberry_pi_ip> ``` 如果一切正常,应该能看到 Nginx 的默认网页。 #### 映射到外网(可选) 虽然本地网络中的设备能够访问您的 Web 服务器,但如果希望外部互联网也能访问此服务器,则需要进一步配置端口转发以及可能的防火墙规则。具体方法可以在其他文档中找到更多信息[^2]。 #### 扩展功能(PHP 和 MySQL 支持) 对于更复杂的网站需求,通常还会涉及 PHP 脚本解释器和数据库管理系统 (MySQL/MariaDB) 。下面是如何扩展这些组件的例子: 1. **安装 PHP** ```bash sudo apt-get install php-fpm php-mysql ``` 2. **调整 Nginx 配置文件支持 PHP 处理请求** 编辑站点配置文件 `/etc/nginx/sites-available/default` ,修改其中的部分设置以便处理 `.php` 文件。 3. **安装 MySQL 数据库** ```bash sudo apt-get install mysql-server ``` 4. **集成 phpMyAdmin 工具管理数据库** 参考如下步骤完成安装及链接创建: ```bash sudo apt-get install phpmyadmin sudo ln -s /usr/share/phpmyadmin /var/www/html ``` 以上过程提供了基本框架用于构建动态内容驱动型 web 应用程序[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值