树莓派搭建博客

  • 2019-03-01
  • 312
  • 0

1. 安装

1.1 安装和配置 nginx

参考自 Ubuntu 16.04 下 Typecho 部署

安装:

sudo apt-get update
sudo apt-get install nginx

配置:

// 切换目录
cd /etc/nginx/sites-available 

// 修改前先备份 default
sudo cp default default.bak

// 编辑配置文件
sudo vim default

修改配置文件为 (http 版本):

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;

    gzip on;
    gzip_min_length 1k;
    gzip_buffers 16 64k;
    gzip_http_version 1.1;
    gzip_comp_level 6;
    gzip_types text/plain application/x-javascript text/css application/xml;
    gzip_vary on;

    location / {
        if (-f $request_filename/index.html){
            rewrite (.*) $1/index.html break;
        }
        if (-f $request_filename/index.php){
            rewrite (.*) $1/index.php;
        }
        if (!-f $request_filename){
            rewrite (.*) /index.php;
        }
    }

    location ~ .*\.php(\/.*)*$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
    }
}

第一部分打开 gzip,gzip 是用于页面数据压缩,可以提高页面加载速度。
第二部分是匹配所有规则,并 rewrite 到主页。
第三部分是匹配 php,使用服务器来解释。

1.2 安装 mysql

sudo apt-get install mysql-server mysql-client

我的树莓派 raspbian stretch 版本在安装 mysql 时未提示输入密码,且之后普通用户登陆会被拒绝,root 身份可以无密码进入。此问题解决方案:Unable To Access Mysql With Root and No Password After New Install On Ubuntu

$ sudo mysql -u root

mysql> USE mysql;
mysql> UPDATE user SET password=PASSWORD('123456') WHERE user='root';
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;

$ sudo /etc/init.d/mysql restart

mysql 远程访问见 阿里云ubuntu16.04搭建wordpress 2.3。不过配置文件是 /etc/mysql/mariadb.conf.d/50-server.cnf

1.3 安装 php7

sudo apt-get install php7.0-fpm php7.0-cli php7.0-curl php7.0-gd php7.0-mcrypt php7.0-cgi

1.4 安装 phpmyadmin

sudo apt-get install phpmyadmin

期间 phpmyadmin 弹出的窗口会让你选择是 _apache2_ 还是 _lightffpd_,按 Tab 跳过。其他所有地方都是点 _Yes_ 即可。

安装如果出现 _An error occurred while installing the database: ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO) . Your options are…_ ,解决办法之一是先去掉数据库root的密码,再安装phpmyadmin,最后再运行_mysql_secure_installation_ 来重设密码。参考自 phpmyadmin-installation-error-1045。代码如下:

$ mysql -uroot -p  # Log into mysql with passwd
mysql> SET PASSWORD FOR root@localhost=PASSWORD('');
$ dpkg-reconfigure phpmyadmin
$ mysql_secure_installation

注意:在执行 mysql_secure_installation 时要注意允许远程访问。

1.5 安装 typecho

wget -c http://typecho.org/downloads/1.1-17.10.30-release.tar.gz
tar -zxvf 1.1-17.10.30-release.tar.gz
mv build/* /var/www/html

tips: wget -c 下载文件的工具,参数 -c 断点传续。

然后浏览器输入 IP 即可安装。

typecho 安装完成后删除 install 目录和 install.php 文件。

2. 安全防护

2.1 后台地址改变

admin文件夹改名,改成你需要的例如abc,然后找到config.inc.php文件,将里面的admin改成abc即可,以后要登录后台访问domain.com/abc/即可。

3. 内网穿透

官网:Sunny-Ngrok
官方文档:Sunny-Ngrok使用教程

推荐理由:使用简单 (一条命令),且免费。


版权声明: 本网站所有资源采用BY-NC-SA 4.0协议进行授权,转载应当以相同方式注明文章来自:树莓派搭建博客 - 一方的天地

评论

还没有任何评论,你来说两句吧

发表评论

陕ICP备18010914号
知识共享许可协议
本作品由一方天地采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资源请尽快联系站长,本站会在24h内删除有争议的资源。 -