jxyblog

jxyblog

email

openwrt路由器搭建网站服务器,Nginx+php+Sqlite

如果你路由器有 USB 口,闪存也够大至少 32Mb, 可以把服务器改成 Nginx+php+Sqlite

之前发了一篇 openwrt 路由器搭建 lighttpd+php+Sqlite 的教程,大致相同,可以先看前面那篇,这篇主要记录一下配置文件。

openwrt 路由器搭建 lighttpd+sqlite+php 网站服务器

我最开始想的是把路由器整个根目录扩容,后面想想不好备份跟维护,USB 要是坏了所有服务都要重新安装了。

目前是把网站目录放在 USB 里,使用 Sqlite 数据库的好处是可以跟网站放一起,一键打包备份,转移服务器也方便,直接改个数据库地址就 OK。

现在转到 nginx,所有的软件都是安装在路由器上,断电也不会丢失,Nginx+php+Sqlite 三件套加上一些其他的组件,路由器闪存占用就 10Mb 左右。

openwrt 上面 nginx 貌似只能搭配 php-fpm 使用。

再次感谢维护 openwrt 的大佬,这些软件都是可以直接拿来就用的,最多微调一下配置文件,连我这种小白也玩的转。

之前用 lighttpd 的时候安装 php-cgi 这个软件包,现在用 nginx 就不需要那个了,直接安装个 php-fpm 这个包就行,里面自带 php8 解释器。

以下是 Nginx 使用的配置文件,配置文件目录在 /etc/nginx/nginx.conf

worker_processes 2;

user root;

include module.d/*.module;

events {
worker_connections  1024;
}

http {
	include mime.types;
	default_type application/octet-stream;
	sendfile on;
         keepalive_timeout 65;
	client_max_body_size 100M;
	large_client_header_buffers 4 64k;



	server { 
		listen 80;
		listen [::]:80;
		server_name jxyblog.top;
                root /mnt/www;
               location / {
            index index.php index.html;
            autoindex  off;
        }


        location ~ \.php(.*)$ {
            root /mnt/www;
            fastcgi_pass   unix:/var/run/php8-fpm.sock;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }




}

	include conf.d/*.conf;
}

以下是 Nginx 的伪静态,适用于 typecho 博客,要开启的话加入上面的配置文件。

       if (!-e $request_filename) {
            rewrite ^(.*)$ /index.php$1 last;
        }

有几点要注意:

由于 nginx 启动的时候默认是替换路由器自带的 LUCI 的,所以安装的时候路由器默认的 80 访问端口先改掉,比如改成 8080,前面那篇教程我也提到过。

不然可能会报错,还有开机自动启动脚本里是不使用 nginx.conf 来启动的,我们还要改个配置文件。

目录在 /etc/config/nginx,就是这个没有后缀的文件 nginx 右键打开

config main global
    option uci_enable 'false'    #把此处改成false就行了,然后在系统启动项里重启NG用的就是我们自己的配置文件了。

到此大公告成

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。