使用nginx实现后端php和asp整合

今天,一位网友从我2009年在大学发的帖子找到了我,问我如何实现php和asp共80端口。这瞬间让我想起了在大学的那些日子,一个人维护着系里面的网站和服务器,那时候学院的网站使用的asp,使用的是windows server2003 + iis6,那时候不知道如何做安全防范,只知道用了瑞星防火墙,只设置相应项目的读权限,设置数据库文件(Access)读写权限之类,然而时常被黑客攻击,被注入js,被篡改代码文件,想想那段时间都可怕。

那时候学院加了一个项目采用的php,由于学校网络中心的限制,对外只开放了80端口,而我们要在这台机器上实现php和asp共80端口,在网上查了很多相关的文章,大部分都是用过 apache 和 iis 整合完成的,实现起来算非常麻烦。不像现在,有了nginx这样优秀的反向代理软件,实现php和asp整合真的是易如反掌了。下面我说一下实现步骤:


前提:

windows平台,php网站(8080端口),asp网站成功运行(8001  端口)。

思路:

其实很容易,只要理解了nginx,不管后端使用php,asp,jsp之类的都没有任何问题。

nginx监听80端口,作为一个门面,用来接收用户所有请求,然后nginx通过url判断将请求交给php还是asp处理,处理完成之后结果由nginx返回给用户。简单吧。


1. 安装nginx

下载地址: http://nginx.org/download/nginx-1.4.7.zip

安装nginx至 D:/nginx 目录


2. 配置nginx

修改 D:/nginx/conf/nginx.conf 配置如下

worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # asp proxy
        location ^~ /asp/ {
            proxy_pass http://127.0.0.1:8001;
        }

        # php proxy
        location / {
            proxy_pass   http://127.0.0.1:8080;
        }

    }

}

3. 启动nginx

双击nginx.exe即可。


OK,现在就实现了通过80端口分别访问asp和php网站了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值