这是一个汇总文,用来总结我在整个配置过程当中遇到的各类问题.由于我在解决这些问题的过程当中发现,typecho被部署在这种须要彻底本身配置的平台上的状况是比较少的,相关的资料也比较少,因此个人解决过程比较困难,所以在此以后,想把这些问题和解决方案都整理出来,若是有一样须要的人,能够直接参考,少走弯路.php
这里使用的sqlite数据库.css
我当时的解决方案是手动新建了一个数据库文件.利用html
1 sqlite3 blog.db 2 create table test(test text);
新建数据库与表,并将数据库所在目录指向这个文件来解决的,不过这个问题的本质并非数据库文件不存在,事实上typecho是能够本身新建数据库文件的,这个问题之因此出现是由于typecho没有对该目录的写权限而致使的问题.nginx
能够经过sql
1 sudo chmod -R 777 /var/www
来解决.不过这里的777过于极端,单纯是是为了确认typecho能够正常工做才设定的,这里的777意味着给予全部人(包括others)R W E的所有权限,这其实是不合理的,按照官方文档,755就够用了.数据库
依旧是权限问题,typecho没有写入权限,解决方案同上.vim
这多是由于你经过新建数据库和本身新建配置文件的方法强制完成了整个配置流程而致使的,而typecho由于没有写入权限,没有可以完成对于数据库的初始化,须要经过更改权限解决.浏览器
这是由于PHP的路径转发有问题致使的,由于不少nginx的默认PHP配置文件的写法为typecho
server { listen 80; root /var/www; index index.php index.html index.htm; location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }
其中路径location的写法是的path_info的转发出现了问题,将location更改成测试
location ~ .*\.php(\/.*)*$
就能够解决了.
在WordPress当中,有一个博客地址的设置,能够用来规范二级域名的指向和转发,而在typecho中,也有相似的设置,只不过它并不在设置里面,而是在执行install.php也就是一开始的安装程序的时候自动执行,将第一次访问主页的地址做为本站的地址.由于在内网进行测试和调整的时候,咱们会使用内网IP访问树莓派,而非经过花生壳等得动态域名.这就使得typecho的本站地址设置出现错误.
在经过域名访问typecho时,若是咱们查看浏览器的HTTP请求的话,咱们会发现请求的CSS地址是192.168.1.100(树莓派内网地址)/var/www/css 显然这个内网地址是没有任何意义的.所以咱们须要从新配置这个参数.
使用域名从新访问树莓派 好比test.ecip.net/install.php 从新运行一次配置程序,便可解决.
这是由于电信屏蔽了默认的HTTP端口(80)致使的.
须要更改nginx配置文件
sudo vim /etc/nginx/sites-available/mysite
将他的端口更改成81或者其余
server { listen 81; root /var/www; index index.php index.html index.htm; location ~ .*\.php(\/.*)*$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }
而后经过test.ecip.net:81访问便可.