Category: 学习笔记

近期关于nginx笔记(反向代理、升级)

1.作为反向代理服务器 让域名指向nginx服务器的IP (如域名 i.linxun.info) 在nginx的配置文件的目录添加文件(如下添加的是/usr/local/nginx/conf/vhost/i.linxun.info.conf),下面的结果是,用户访问http://i.linxun.info/,nginx就会访问http://222.206.75.227/并取得相关数据后把数据返回到用户),实现让互联网访问学校工作室内部网络的web服务器 server { listen 80; server_name i.linxun.info; location /{ proxy_pass http://222.206.75.227; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for; } } 如果想下面这样的规则,区别在于,当访问http://i.linxun.info/test1/, nginx服务器就会访问http://222.206.75.227/test2/并取得相关数据后把数据返回到用户 server { listen 80; server_name i.linxun.info; location /test1{ proxy_pass http://222.206.75.227/test2; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for; } } 2.升级nginx版本脚本 升级脚本来自http://blog.licess.org/lnmp-upgrade-any-nginx-version/ 执行命令即可 wget soft.vpser.net/lnmp/upgrade_nginx.sh;sh upgrade_nginx.sh

《apache2 官方文档》 笔记

近期系统整理和积累以前用过学过的知识,apache2是其中的一个部分 一、关于apache2的安装配置 1.关于Perl5模块,有些用Perl5写的支持脚本,(比如apxs)需要Perl5解释器,当然如果apache2的configure过程中没有找到Perl5 (configure的时候需要加上  –with-perl 选项),也没关系,这不影响apache httpd 的编译和安装,知识相关的支持脚本不能使用而已 2.关于升级,升级前阅读发布公告(release announcement),考虑升级会对站点的影响;不过小幅度的版本升级很容易,make install 的过程不会改写任何已经存在的文档、日志、配置文件,但是开发者也尽量两兼容上一版本的configure的选项、运行时配置、模块 二、启动apache 1.apache是怎么启动的,如果配置文件中的Listen定义的默认端口80(1024以下),那么启动apache将需要root权限以将它绑定在特权端口上。一旦服务器开始启动并完成了一些诸如打开日志文件之类的准备操作,它将创建很多子进程来完成一些诸如监听和回应客户端请求的动作。httpd主进程仍然以root用户的权限运行,而它的子进程将以较低权限的用户运行。这将由你选择的多路处理模块进行控制。 2.关于启动脚本,调用httpd可执行文件的推荐方法是试用apachectl控制脚本。此脚本设置了在某些操作系统中正常运行httpd所必需的环境变量,然后调用httpd二进制文件。apachectl会传递命令行的所有参数,因此所有用于httpd的选项多半也可以用于apachectl。 3.httpd被调用后第一件要做的事情就是找到并读取配置文件httpd.conf,此文件的位置是在编译时设定的,亦可以用  -f 操作配置 (PREFIX/bin/apachectl -f  PREFIX/conf/httpd.conf 三、停止和重启apache 优雅重启apache  , apachectl -k graceful 优雅停止:  apachectl -k graceful-stop 立即停止:apachectl -k stop 四、配置文件 1.配置文件语法 配置文件中,每行包含一个指令,在行尾使用反斜杆 ” \ “可以表示续行,但是反斜杠与下一行之间不能有任何其他字符(包括空白符) 配置文件中的指令是不区分大小写的,但是指令的参数通常对大小写敏感。 以  “ # ”开头的行被视为注解并被忽略,注解不能出现在指令后边,空白行和指令前的空白符将被忽略,因此可以采用缩进以保持配置层次的清晰 测试配置文件命令:apachectl configtest 或  apachectl -t 2.模块 apache是模块化的服务器,这意味着核心中只包含实现最基本功能的模块。扩展功能可以作为模块动态加载,默认情况下,只有base组的模块被编译进了服务器 如果服务器在编译时,包含了DSO模块,那么各个模块可以独立编译,并可以随时用LoadModule命令加载;否则,要正价货删除模块必须重新编译整个apache 3.  .htaccess文件 […]

《unix & linux 大学教程》简单笔记

看这本书的主要想法是,计划系统的温习linux的一些基础知识 1.什么是操作系统 首先计算机按照命令自动执行任务。而一系列的命令就成为程序,程序也通常可以被称为软件,而计算机的物理部件被称为硬件。 所以操作系统是运行计算机的总控制程序,主要功能是高效利用硬件。 2.操作系统的重要功能 控制计算机并在计算机启动时初始化计算机; 支持计算机交互所使用的界面 为需要使用计算机资源(磁盘空间,处理时间,内存等)的程序提供接口 管理内存 管理文件系统 调度工作 提供帐户和安全服务 3.boot的由来 boot,引导;是bootstrapping的简写 , 表示一个古老的谚语(意思是“通过自力更生出人头地) 4.什么是内核 ? 5.内核的所提供的基本服务 内存管理(虚拟内存,分页) 进程管理(进程创建、终止、调度) 进程间的通信(本地、网络) 输入、输出 文件管理 安全和访问控制 网络访问(tcp/ip) 6.内核的主要分类 单内核(monolithic kernel) 、微内核(microkernel) 单内核是速度快,所有事情都在一个单独的程序中完成。缺点是规模较大和使用不便 微内核是速度较慢,这是因为它必须调用其他程序来完成大部分工作。优点是模块化,便于程序员理解 7.Unix = Unix内核 + 实用工具 8.Unix现在是一个通用名称,Unix是一种类型的操作系统 9.free software foundation (FSF) 自由软件基金会 10.GNU ( GNU 11.GPL 12. copyleft 13.host, terminal, terminal server 14. host […]