帮助中心 >  技术知识库 >  云服务器 >  服务器教程 >  Linux下仅通过NGINX+MONO服务实现访问ASP和PHP网站

Linux下仅通过NGINX+MONO服务实现访问ASP和PHP网站

2020-10-12 10:24:01 104

首先,准备一台Linux服务器,考虑到Mono(http://www.landui.com)的安装,建议使用Debian、Ubuntu、CentOS系统。至于Nginx,建议使用LNMP(https://www.landui.comp.org)一键安装,其意思是:L:Linux,N:Nginx,M:MySQL,P:PHP。

借助SSH工具,首先安装LNMP(https://www.landui.com/install.html),然后安装Mono(http://www.landui.com/download/#download-lin)选择对应系统的安装命令。Ubuntu和Debian下注意安装mono-develmono-xsp4CentOS下注意安装mono-develxsp。其实mono-devel肯定是必要的,不过我怕出错,安装的是mono-complete,关键区别在于mono-xsp4xsp,因为系统不同,不过最后运行的都是fastcgi-mono-server4服务。

一切准备就绪后,我们就开始进行配置工作。借助SFTP工具打开(编辑)/usr/local/nginx/conf/nginx.conf文件,这是Nginx的配置文件,需要注意的是路径问题,因为这用的是LNMP一键安装包,所以为此路径,待会儿出现的所有路径同理。修改(参考:http://www.landui.com/docs/web/fastcgi/nginx):

server {

         listen   80;

         server_name  www.landui.com;

         root /home/wwwroot/default;

 

         location / {

                 index index.html index.htm default.aspx Default.aspx;

                 fastcgi_index Default.aspx;

                 fastcgi_pass 127.0.0.1:9000;

                 include /usr/local/nginx/conf/fastcgi_params;

                  }

      }

打开(编辑)/usr/local/nginx/conf/fastcgi_params文件,在底部添加:

fastcgi_param PATH_INFO "";

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

打开(编辑)/etc/init.d/nginx文件,这是Nginx的状态管理文件,在start的if判断句相应位置处添加:

fastcgi-mono-server4 /applications=/:/home/wwwroot/default/ /socket=tcp:127.0.0.1:9000 &

fastcgi-mono-server4服务同Nginx一起启动。

好了,配置完毕,重启一下Nginx:/etc/init.d/nginx restart 创建一个.net framework 4.0ASP网站预览一下看看,此时还得考虑MySQL的连接问题,当然如果VPS或其他Cloud Server及服务器内存大于或等于2GB,硬盘大于或等于6GB的话,可以继续使用SQL Server,参考:https://www.landui.com/en-us/sql/linux/sql-server-linux-setup

至于使用MySQL呢,因为LNMP已经一键安装啦!只需要配置连接即可。打开https://www.landui.com/downloads/connector/net/ 选择Generally Available(GA) Releases即可,Select Operating System:.NET & Mono即可,Download。页面跳转后选择No thanks, just start my download.不用Login也不用Sign Up。下载解压后使用Visual Studio平台添加引用版本号文件夹下的MySql.Data.dll组件到解决方案,确保3306端口已开,MySQL用户的IP权限已给,至此MySQL的连接问题搞定,连接语句的语法与SQL Server类似。

接下来,就是搞定PHP站点。通过域名的DNS解析,先添加一个二级域名,如:php.domain.com。此时记录类型选择显性URL(如选择隐性URL则会造成网站标题不能显示,只会显示当前设置的二级域名),主机记录填上php,记录值填上http://www.landui.com:XXXX(欲设置的端口号,可为1024~65535,建议还是自查一下,避免端口冲突),其余默认即可。

打开SSH工具,添加网站(虚拟主机),参考:https://www.landui.com/faq/lnmp-vhost-add-howto.html 注意这里就不要添加SSL证书了,不过443端口(https)可以分配给默认的80端口。

完成后打开(编辑)/usr/local/nginx/conf/vhost/php.domain.com.conf文件,复制所有信息,粘贴到/usr/local/nginx/conf/nginx.conf文件的最后一个server下面,并修改listen处的端口信息,此端口号与设置DNS解析时记录值处填写的相同,页脚的语句include vhost/*.conf;可用#注释掉,保存。至于/usr/local/nginx/conf/vhost/php.domain.com.conf文件可删除。

至此,所有配置完成,上传网站程序到相应目录就能访问啦~~~!


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: