本文适合全新安装,也适合安装了Lnmp.org一键包的安装1、下载substitutions4nginx模块,这个模块用于替换。 pkill nginx /etc/init.d/nginx stop #停止nginx cd /root apt-get install -y git git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module 2、重新编译nginx wget -c http://soft.vpser.net/web/nginx/nginx-1.0.15.tar.gz tar zxvf nginx-1.0.15.tar.gz ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_mod
由于目前使用军哥的lnmp一键包的人较多,所以,本教程基于lnmp0.9!注意添加脚本后要重启nginx/etc/init.d/nginx restart一、最简单的反代脚本(无缓存):server{listen 80;server_name www.oiplay.com; #你要绑定的域名location / {proxy_pass http://www.baidu.com/; #你要反代的域名proxy_redirect off;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}保存为.conf文件上传到/usr/local/nginx/conf/vhost并重启nginx即可!二、最简单的反代+全缓存脚本:#新建2个目录,放置缓存文件:mkdir -p /home/cache/pathmkdir /home/cache/temp修改/usr/loc
在之前的《nginx反代加替换傻瓜教程》,我提到了要用subs_filter模块替换中文,需要转换成utf-8编码。当时演示的时候随便拿了一张notepad的图,其实那样保存是会出错的o(╯□╰)o(当时教程所用的演示图)后来有很多MJJ反映说提示错误信息,我试了一下,提示nginx not runningnginx: [emerg] unknown directive "锘?erver" in /usr/local/nginx/conf/vhost/.conf:1 nginx already running.这是因为Windows自带的记事本保存的utf-8编码带有BOM头。在百科上看到 类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。但对于 PHP来说,BOM是个大麻烦。 PHP并不会忽略BOM,所以在读取、包含或者引用这些文件时,会把BOM作为该文件开头正
A服务器反向代理B(web服务器)首先,我们一起来看看如何使用一台服务器或者VPS反向代理另一台服务器或者另一个服务器上的域名。我们假设用于squid的服务器为A,而真实后端web服务器为B。首先,在A服务器编译squid,以root账户ssh登陆A,运行下列命令(本文基于CentOS 5.* 32bit)yum install squid编译过程很快,如果有安装httpd,可以移除之。yum remove httpd接下来是最重要的部分,编辑squid.conf文件(文件位置/etc/squid/),squid.conf配置项目较多,网络上关于常规的设定教程也很多,本文我们主要是记录能使用它反代另一台服务器或者域名,所以,我们仅列出需要修改的前后端地址及域名部分。修改过的squid.conf 点击下载squid.confcache_peer *.*.*.* parent 80 7 no-query originserver name=www1 cache_peer_domain www1 oiplay.com www.oiplay.com上面的...换成您的web服务器IP,如果有
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。解决:1)在windows下转换:利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。 如果是 Notepad++ 则是在: 编辑 -> EOL Conversion -> 转换为 UNIX 格式 中。2)也可在Linux中转换:首先要确保文件有可执行权限sh>chmod a+x filename然后修改文件格式sh>vi filename利用如下命令查看文件格式:set ff 或 :set fileformat可以看到如下信息fileformat=dos 或 fileformat=unix利用如下命令修改文件格式:set ff=unix 或 :set fileformat=unix:wq (存盘退出)最后再执行文件sh>./filename