(转载)openwrt nginx
ln -s ../../../feeds/packages/net/fcgiwrap/ fcgiwrap
本帖最后由 cjd6568358 于 2018-6-4 11:21 编辑 刚又把路由器重置重新操作了一遍流程,确认无误后整理了教程(
有人问为什么要把uhttpd换成nginx?
1、首先uhttpd运行缓慢
2、也有用lighttpd代替的,速度还可以但是他的反向代理只支持IP不支持域名
3、有想要在路由器上面建站的大多数用的是php,不想同时开启多个web服务器,nginx刚好可以满足我的一切需求
) 使用nginx代替uhttpd 1、禁用uhttpd(防止安装nginx后自动运行出现端口冲突)
/etc/init.d/uhttpd stop
/etc/init.d/uhttpd disable
复制代码 2、安装依赖
opkg install libpcre nginx spawn-fcgi fcgi fcgiwrap
复制代码 注意:nginx默认是不可以直接执行cgi的(luci的运行方式就是cgi),但是可以代理fcgi,所以这里我们需要用fcgiwrap来包装下luci的cgi
fcgiwrap运行依赖spawn-fcgi和fcgi,这两个都可以在对应的安装源找到,但是fcgiwrap官方源貌似没有,需要编译。这里给出源代码地址和编译方式,各位有能力的可以试试
fcgiwrap
在OpenWrt上移植fcgiwrap为nginx提供cgi支持 我用的fcgiwrap版本刚好论坛里有人编译出来了,所以直接用的他的,平台是MT7620,HG255D也可用
PS:这个版本的fcgiwrap整合了shell脚本,所以如果用了这个版本的第四步不需要了,改成修改/etc/init.d/fcgiwrap start_service方法
start_service() {
echo -e "Starting $NAME ..."
#procd_set_param command $SPAWN_FCGI -u $FCGI_USER -g $FCGI_GROUP -s $FCGI_SOCKET -P $PIDFILE -F $FORK_NUM -f $DAEMON
$SPAWN_FCGI -a 127.0.0.1 -p 9000 -f $DAEMON -F $FORK_NUM
}
复制代码 对应的启动脚本
/etc/init.d/fcgiwrap start
/etc/init.d/fcgiwrap restart
复制代码 3、修改/etc/nginx/nginx.conf
server {
listen 80;
server_name localhost;
charset UTF-8;
# access_log /tmp/access_80.log main;
# error_log /tmp/error_80.log debug;
autoindex on;
root /www;
location ~* /cgi-bin/luci.* {
root /www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index /cgi-bin/luci; fastcgi_split_path_info (/cgi-bin/luci)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
复制代码 4、启动spawn-fcgi(如需开机自动运行,可将命令添加到/etc/rc.local)
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -f /usr/sbin/fcgiwrap -F 2
复制代码 5、启动nginx
/etc/init.d/nginx enable
/etc/init.d/nginx start
复制代码 6、移除uhttpd
opkg remove uhttpd
复制代码 到了这一步就可以打开浏览器输入192.168.1.1正常访问luci管理页面了
(转载)openwrt nginx的更多相关文章
- OpenWrt+nginx+php安装discuz
下面这个图片是本次的硬件资源:一个无线路由器的开发板,一个8G的u盘,一条手机的数据线(可以作为串口和供电使用),一条网线,一个USB Hub. <ignore_js_op> ...
- 【转载】nginx 并发数问题思考:worker_connections,worker_processes与 max clients
注:这个文章主要是作者一直在研究nginx作为http server和反向代理服务器时候所谓最大的max_clients和 worker_connections的计算公式, 其实最后的结论也没有卡上公 ...
- 【转载】Nginx+Tomcat 动静分离实现负载均衡
0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 1 # 定义Nginx运行的用户 和 用户组 如 ...
- [转载+整理]Nginx Location匹配规则
目录 规则语法 location 分类 匹配顺序: 扩展 location / {}和 location =/ {}的区别 测试 规则语法 语法 匹配规则 空 普通匹配(遵循最大前缀匹配规则, 优先度 ...
- (转载)Nginx Windows详细安装部署教程
本文转载自:https://www.cnblogs.com/taiyonghai/p/9402734.html 一.Nginx简介 Nginx (engine x) 是一个高性能的HTTP和反向代理服 ...
- 转载:Nginx做反向代理和负载均衡时“X-Forwarded-For”信息头的处理
转载自:https://blog.51cto.com/wjw7702/1150225 一.概述 如今利用nginx做反向代理和负载均衡的实例已经很多了,针对不同的应用场合,还有很多需要注意的地方,本文 ...
- 转载: Nginx 通览
转载地址:https://developer.51cto.com/art/201912/608365.htm Nginx 简介 Nginx 是一个免费.开源.高性能.轻量级的 HTTP 和反向代理服务 ...
- 【转载】Nginx多服务绑定80端口及映射域名
多服务绑定80端口及映射域名 说明:业务需要配置的样例模板,如需深入了解,请查看官方文档 1.Nginx配置文件nginx.conf(可拆分多台机器部署) worker_processes 1; e ...
- [转载] 深入 nginx 架构
原文: http://www.cnbeta.com/articles/402709.htm 了解 nginx 架构帮助我们学习如何开发高性能 web 服务. 为了更好地理解设计,你需要了解NGINX是 ...
随机推荐
- 《构建之法》IT行业的创新 读书笔记 WEEK 5
本周选读邹欣老师的<构建之法>第16章——IT行业的创新. 邹欣老师将本章话题分成五个部分来阐述:创新的迷思.创新的时机.创新的招数.魔方的创新.创新和作坊,博主认为时机和招数这两个部分在 ...
- mavenFailed to execute goal org.apache.maven.plugins:maven-surefire-plugin解决方法
在项目上右键==>属性==>java构建路径==>源代码,然后把几个文件夹全部删除,然后再添加文件夹中把它们从新添加,然后再maven intall,部署.
- 【扯淡篇】SDOI2018丶一轮游丶记
--某不知名蒟蒻的SDOI2018 R1退役场游记&&OI生涯总结 真的是混不下去了. 进队是不可能的, 进队是不可能进队的. 这辈子不可能进队的. 刷题又不会刷 就是靠打表找规律这种 ...
- git 分支相关操作
git status 查看当前工作区 会显示分支 如下 D:\工程\vue_study\testplat_vue>git statusOn branch masternothing to co ...
- centos 单用户登陆模式操作
在centos中因为安装java而配置 jdk环境变量的原因,对/etc/profile文件进行了编辑 错误的环境变量配置导致在第一次修改profile文件并保存后,执行source /etc/pro ...
- HZOI2019SF
Simulation Final 坑.下午我要爆零(RP++) upd: 哈哈哈哈哈哈哈哈哈哈我真的爆零了哈哈哈哈哈哈哈哈哈哈 关于细节, T1A了但是和T3交反了哈哈哈哈哈哈哈哈哈哈 我说我真的不是 ...
- 【LeetCode 2】两数相加
描述 [题解] 模拟高精度的加法. 用x来记录前面的进位就好. [代码] /** * Definition for singly-linked list. * struct ListNode { * ...
- php获取网页源码分行显示
file(PHP 3, PHP 4 )file -- 把整个文件读入一个数组中说明:file ( string filename [, int use_include_path [, resource ...
- PHP导出excel word的代码
php导出为word原理 一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上,然后创建一个com,调用它的方法.安装过office的服务器可以调用一个叫wo ...
- codeforces 447E or 446C 线段树 + fib性质或二次剩余性质
CF446C题意: 给你一个数列\(a_i\),有两种操作:区间求和:\(\sum_{i=l}^{r}(a[i]+=fib[i-l+1])\).\(fib\)是斐波那契数列. 思路 (一) codef ...