在Linux下配置.net网站
一、Linux安装
1.1 Linux环境
本篇文章选择VMWare虚拟机安装Linux,使用的Linux是CentOS-7。可以在百度上自行下载一个VMWare和CentOS-7镜像,建议使用最新版。
CentOS-7下载
https://www.centos.org/download/
VMWare下载
1.2 Linux虚拟机安装步骤:
1.2.1 安装最新版VMWare
1.2.2 创建新的虚拟机 》 选择:自定义(高级) 》 硬件兼容性选择最新的。
硬盘、内存、CPU个数根据宿主机的实际情况适当选择。
开启虚拟机后,选择“带GUI的服务器”,这样安装好以后,就不用再安装GUI图形界面了。如下图,点击“软件选择”以后,点选“带GUI的服务器”
安装位置选择自动分区
剩下的就是点击安装,等待系统安装完成。
更详细的虚拟机安装CentOS参考:
http://blog.csdn.net/qq_15380765/article/details/56503154?locationNum=2&fps=1
二、ASP.NET WEB服务器搭建
2.1 Jexus介绍
Jexus是一款Linux平台上的高性能WEB服务器和负载均衡网关,以支持ASP.NET、ASP.NET CORE、PHP为特色,同时具备反向代理、入侵检测等重要功能。可以这样说,Jexus是.NET、.NET CORE跨平台的最优秀的宿主服务器,如果我们认为它是Linux平台的IIS,这并不为过,因为,Jexus不但非常快,而且拥有IIS和其它Web服务器所不具备的高度的安全性。
2.2 网址
Jexus 网址:https://www.jexus.org/
建议安装 Jexus 独立版,因为独立版里已包含 .NET 运行时(mono),而不需要在服务器上安装mono,就能正常运行。当然,也可以安装Jexus的通用版,不过在此之前,应该先安装mono
2.3 安装命令
Jexus的安装非常方便,只需要在终端里执行一条命令即可,需要注意的是,必须在root权限下执行。
安装jexus独立版的命令是:
curl https://jexus.org/release/x64/install.sh|sh
2.4 Jexus 操作命令
Jexus包括如下操作命令(首先 cd /usr/jexus):
启动:sudo ./jws start
停止:sudo ./jws stop
重启:sudo ./jws restart
2.5 Jexus 配置
2.5.1 网站配置文件目录
Jexus的安装目录是:/usr/jexus/
在这个目录下有一个siteconf的目录,此目录是Jexus的网站配置文件目录。Jexus允许运行多个网站,每个网站的配置文件,都放在该目录下。多站点配置也很简单,目录即站点:一个目录 + 一个网站配置文件就是一个站点。
需要特别注意的是:
1,目录里每一个文件,在Jexus会认为是一个网站的网站配置文件,所以此目录里不要放置其它文件。作为开发者,或者后续的维护管理员,可以把网站配置文件命名为网站名称,方便日后管理。
2,网站配置文件命名,不要有空格!
3,网站配置文件,是对每个网站的配置,与解决方案里的web.config不是一个概念。
2.5.2 网站的代码文件目录
网站代码目录是:/var/www/
此目录就是Jexus读取的网站代码文件目录。在这个目录下,每一个文件夹就是一个网站,文件夹的名称与网站配置文件相对应。
我们以默认的网站defalut举例:在siteconf目录下有个名称为default(假设网站配置文件名称是按照上一步的建议命名的。网站配置文件介绍见下一步。)的网站配置文件,那么在/var/www/ 目录下的default目录,就是与此网站配置文件相对应的代码目录。
2.5.3 网站配置文件简单介绍
我们还以默认网站:default为例介绍
打开siteconf目录里的default文件,文件内容如下:
######################
# Web Site: Default
########################################
port=80
root=/ /var/www/default
hosts=* #OR your.com,*.your.com
# addr=0.0.0.0
# CheckQuery=false
NoLog=true
# AppHost={CmdLine=/usr/local/x/xx;AppRoot=/usr/local/x;Port=5000}
# NoFile=/index.aspx
# Keep_Alive=false
# UseGZIP=false
# UseHttps=true
# ssl.certificate=/x/xxx.crt #or pem
# ssl.certificatekey=/x/xxx.key
# ssl.protocol=TLSv1.0 # TLSv1.1 or TLSv1.2...
# ssl.ciphers=
# DenyFrom=192.168.0.233, 192.168.1.*, 192.168.2.0/24
# AllowFrom=192.168.*.*
# DenyDirs=~/cgi, ~/upfiles
# indexes=myindex.aspx
# rewrite=^/.+?\.(asp|php|cgi|pl|sh)$ /index.aspx
# reproxy=/bbs/ http://192.168.1.112/bbs/
# host.Redirect=abc.com www.abc.com 301
# ResponseHandler.Add=myKey:myValue
# Jexus php fastcgi address is '/var/run/jexus/phpsvr'
#######################################################
# fastcgi.add=php|socket:/var/run/jexus/phpsvr
# php-fpm listen address is '127.0.0.1:9000'
############################################
# fastcgi.add=php|tcp:127.0.0.1:9000
部分代码意义如下:
Port=80 #jexus WEB服务器侦听端口,必填,也可以是其它指定的端口。无论创建了多少个站点,想要域名直接访问各自的站点,每个网站的Port都是80。
root=/ /var/www/default #网站URL根路径(虚拟目录)和对应的物理路径,必填。等号右边的两个/之间有一个空格,并且是必须有的空格。
hosts=* #网站域名(建议填写),可以用泛域名,比如:*.default.cn(不填此项或只填一个“*”号表示这是默认网站,一个端口只能有一个默认站)
indexes=myindex.aspx #首页文件名,可以写多个,用英文逗号分开(可以不填。因为JWS系统含有常用首页名)。如果不填,Jexus会使用index.aspx或者index.html作为主页,与web.config里的配置无关。
addr=0.0.0.0 #绑定到服务器本机的某个IP地址,默认情况下是所有地址,即“0.0.0.0”。
更多配置参考:
https://www.cnblogs.com/webenh/p/Jexus-Web-Server-Config.html
三、防火墙配置
CentOS-7的默认防火墙是Firewalls,但是在这里我们不用默认的,用另一个防火墙:iptables。
3.1 关闭默认防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
3.2 安装iptables防火墙
yum install iptables-services
执行以后,一路yes就可以。
3.3 配置端口允许访问
3.2.1 进入sysconfig目录
cd /etc/sysconfig/
3.2.2 编辑iptables文件
打开iptables文件:vim iptables
修改文件,加入以下内容
-A INPUT -m state --state NEW -m tcp -p tcp --dport 81 -j ACCEPT
这里是把81端口加入了允许访问队列,端口号可根据实际修改。
3.2.3 保存修改
按ESC键 跳到命令模式,然后:
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
:q 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
3.2.4 重载iptables
service iptables restart
更多iptables参考:
http://blog.chinaunix.net/uid-26495963-id-3279216.html
firewalld 和 iptables 详解参考
https://www.linuxidc.com/Linux/2017-03/141434.htm
四、Xftp上传文件
Xftp是一个基于 MS windows 平台的功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,MS windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。Xftp 能同时适应初级用户和高级用户的需要。它采用了标准的 Windows 风格的向导,它简单的界面能与其他 Windows 应用程序紧密地协同工作,此外它还为高级用户提供了众多强劲的功能特性。
firewalld和iptables
在Linux下配置.net网站的更多相关文章
- Linux下配置PHP开发环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
- linux下的php网站放到Windows服务器IIS下导入 .htaccess文件伪静态规则转换 (wordpress)
需要特别注意的是: 1. .htacdess文件在 wordpress中 是可以生成的 安装 WP Super Cache后,开启该插件>>设置>>高级>>找到并点 ...
- linux下的php网站放到Windows服务器IIS下.htaccess文件伪静态规则转换
此办法只适合于linux下的php网站放到Windows服务器IIS下 , 网站除了主页面正常以外 子页面全部出现404错误 这里子页面出现404 错误是说明伪静态没有开启 什么是.htac ...
- linux下配置tomcat集群的负载均衡
linux下配置tomcat集群的负载均衡 一.首先了解下与集群相关的几个概念集群:集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台.在客户端看来,一个集群就象是一个服 ...
- 【转】 linux下配置squid 服务器,最简单使用方式
linux下配置squid 1.什么是squid Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器.Squid有广泛的用途,从作为网 ...
- Linux下配置一个VNC服务器
在Linux下配置一个VNC服务器,并设置2个用户,要求其中一个用户登录时不需要输入密码. 然后在客户端使用ssh+vncview的方式访问. 1确认vnc安装 2配置vncserver 3测试vnc ...
- linux下配置mysql默认编码utf8
linux下配置mysql默认编码utf8 下面是需要在对应地方加入的配置 [client] default-character-set=utf8 [mysqld] character-set-ser ...
- Linux下配置Lamp
linux下配置lamp步骤: 一.快速安装Apache+PHP5+MySql 先更新: # yum update 然后安装LAMP环境:(163的yum源上只有php5.1.6 mysql 5.0. ...
- 一步一步教你如何在linux下配置apache+tomcat(转)
一步一步教你如何在linux下配置apache+tomcat 一.安装前准备. 1. 所有组件都安装到/usr/local/e789目录下 2. 解压缩命令:tar —vxzf 文件名(. ...
随机推荐
- qt的webkit
qt4里面,在pro文件添加 QT += webkit qt5里面,在pro文件添加 QT += webkit webkitwidgets 备注: webkit不支持静态编译
- Nginx 之:nginx.conf结构
nginx.conf文件结构如下: ..... events { ...... } http{ .... server{ .... } server{ listen 192.168.0.12:80; ...
- Oracle归档与非归档模式
一.什么是Oracle归档模式 Oracle数据库有联机重做日志,这个日志是记录对数据库所做的修改,比如插入,删除,更新数据等,对这些操作都会记录在联机重做日志里.一般数据库至少要有2个联机重做日志组 ...
- linux下启动关闭oracle
1. linux下启动oracle su - oracle sqlplus /nolog conn /as sysdba startup exit lsnrctl start 2. linux下关闭o ...
- 深入浅出 Java Concurrency (7): 锁机制 part 2 AQS
在理解J.U.C原理以及锁机制之前,我们来介绍J.U.C框架最核心也是最复杂的一个基础类:java.util.concurrent.locks.AbstractQueuedSynchronizer ...
- django之全文检索
全文检索 全文检索不同于特定字段的模糊查询,使用全文检索的效率更高,并且能够对于中文进行分词处理 haystack:django的一个包,可以方便地对model里面的内容进行索引.搜索,设计为支持wh ...
- cento7.3下玩转sphinx
cento7.5下玩转sphinx 1 安装依赖文件 yum install postgresql-libs unixODBC 2 下载 wget http://sphinxsearch.com/fi ...
- Python模块部分
模块初识及正则表达式 Python re模块与正则表达式的运用 Python中常用模块一 模块和包
- RHCE7 学习里程-4用户权限,简单进程管理
#创建用户 useradd abc 使用 vipw 命令查看 /etc/passwd 文件下 是否存在新用户 #G却换到最后一行 #创建账号的时候,默认也新建了一个组,组名跟用户名一样 groupad ...
- 华为路由器pppoe拨号
一.概要 模拟pppoe 拨号 , 软件 ensp , 简单拓扑: 二.配置 1.基本环境配置 pc1 AR1 int gi 0/0/0 ip add 192.168.10.254 24 2.开始 ...