简单粗暴的Caddy Server

在上一篇的《Mac 极简的开发环境 Laravel Valet 实践》中提到Valet是利用系统后台启用的Caddy来提供 web 服务的,这个Caddy是个 web server?今天玩了一下,非常赞,当然简单粗暴是有点标题党了。 Caddy是一个 Go 写的服务器软件,官方的宣传语“The HTTP/2 web server with automatic HTTPS”以及“Serve The Web Like It’s 2016”简明表达了这个软件的优点和趋势,它拥有基本的 apache 或者 nginx 有的 web server 模块,同时还有一些很有特色的功能,比如: HTTP/2 Automatic HTTPS Multi-core Websockets Markdown IPv6 Git …… 用 Caddy 我们就可以很方便的部署一个 Markdown 文本作为静态网站访问,或者它的 Git 指令完成代码的自动化部署,当然它很大的特色就是它的语法非常简洁,比 nginx 还要简单,配置部署起来很方便,下面随便举几个例子吧。 对网站添加BasicAuth,用户名 ryan,密码 12345 basicauth / ryan 12345 用CORS解决跨域问题 cors / { origin http://allowedSite.com origin http://anotherSite.org https://anotherSite.

阅读全文

Codeinigiter + Nginx 配置

Codeinigiter 项目移植到 Nginx 服务器上,蛮蛋疼的,搞了一下午,记录一下关键部分配置,这里去除 index.php [shell] location /{ index index.html index.php; if (-e $request_filename) { break; } if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } } location ~ .+.php($|/){ root /home/wwwroot/crm; fastcgi_index index.php; fastcgi_split_path_info ^(.+.php)(.*)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_pass unix:/tmp/php-cgi.sock; include fastcgi_params; } [/shell] fastcgi_pass 指定的 FastCgi 端口或者套接字不能错了,要不然一直 502 错误,就是这个搞了我半天。 转载请注明: 转载自Ryan 是菜鸟 | LNMP 技术栈笔记 如果觉得本篇文章对您十分有益,何不 打赏一下 本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可

阅读全文

access_log 指令指定了日志文件存放的路径。 关闭日志记录: access_log off 1.access 为日志格式的名称,这里个名称可以自定义,通过 log_format 指令可以制定日志格式,如果不加日志格式,则使用默认的日志格式记录日志: access_log /home/wwwlogs/access.log access; buffer 表示内存缓冲区的大小: access_log /home/wwwlogs/access.log access buffer=32k; 2.log_format 指令用来设置日志的记录格式,access 为日志格式名称: log_format access '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" $http_x_forwarded_for'; 变量所代表的含义如下: $remote_addr 记录客户端 IP $http_x_forwarded_for 记录 X-Forwarded-For IP $remote_user 远程客户端用户名 $time_local 访问时间和时区 $request 请求 URL 和 HTTP 协议 $status 请求状态 200,404 等 $body_bytes_sent 发给客户端主体文件的大小 $http_referer 从哪个连接访问过来 $http_user_agent 客户端浏览器信息 3.Nginx 日志文件的切割,日志文件的不断变大,考虑到服务器的效率和分析日志的方便,可以对日志文件进行按天分割,下面是一段按天切割日志文件,并按照年月日存放在目录中的 shell 脚本:

阅读全文

Vim高亮显示Nginx语法

执行以下命令,就可以实现 vim 编辑 nginx.conf 时语法高亮显示了! mkdir -p ~/.vim/syntax/ wget -O ~/.vim/syntax/nginx.vim http://www.vim.org/scripts/download_script.php?src_id=14376 echo "au BufRead,BufNewFile /usr/local/nginx/conf/* set ft=nginx" >> ~/.vim/filetype.vim 其中/usr/local/nginx/conf 为 nginx 配置文件目录 转载请注明: 转载自Ryan 是菜鸟 | LNMP 技术栈笔记 如果觉得本篇文章对您十分有益,何不 打赏一下 本文链接地址: Vim 高亮显示 Nginx 语法 本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可

阅读全文

学习了一下,Nginx 和 Apache 一样,可以配置基于 IP,域名和端口的虚拟主机,而且配置很简单,记录一下! 首先配置一个基于 IP 的虚拟主机,我们先添加一个 IP 别名,并在这个 IP 上虚拟一个主机出来: $ifconfig eth0:1 192.168.241.101 broadcast 192.168.241.255 netmask 255.255.255.0 up $route add -host 192.168.241.101 dev eth0:1 然后编辑 Nginx 的 配置文件: $vim /usr/local/nginx/conf/nginx.conf 添加下面的 server 配置段: server { #监听的IP和端口 listen 192.168.241.101:80; #主机名 server_name 192.168.241.101; index index.html index.htm index.php; root /home/test; location ~ .*\.(php|php5)?$ { try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fcgi.conf; } location /status { stub_status on; access_log off; } location ~ .

阅读全文

我的安装环境是 CentOS 5.5,使用的是源码包的安装方式。在安装前先做好一点准备,主要是 GCC 的编译工具,以及模块的依赖需要的第三方的库。gizp 模块需要 zlib 库(压缩),rewrite 模块需要 pcre 库(Perl 库,包括 perl 兼容的正规表达式库),ssl 模块需要 openssl 库。这里直接用 yum 安装就可以了: yum -y install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel 下载 Nginx 源码包,1.2.2 是目前的最新稳定版本: wget http://nginx.org/download/nginx-1.2.2.tar.gz 解压源码包,在编译安装前,我们可以看下 Nginx 的可以编译的选项: tar zxvf nginx-1.2.2.tar.gz cd nginx-1.2.2 ./configure --help 可以看到 Nginx 的 configure 脚本支持的选项非常多,比如–prefix –sbin-path –conf-path= –error-log-path 等等,都有详细的说明,可以根据需求自定义添加选项编译。然后就可以直接编译安装了: ./configure --prefix=/usr/local/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --http-log-path=/var/log/nginx/access.

阅读全文

作者的图片

Ryan是菜鸟 | LNMP技术栈笔记

一步一个脚印,一直在路上!记录LNMP技术栈,Web架构,区块链等笔记

菜鸟码农

南京