centos7+mono4.2.3.4+jexus5.8.1跨平台起飞
很早之前就开始关注.net跨平台,最近正好测试了下用EF6连接mysql,于是就想直接把网站扔进Linux。查了很多资料,鼓捣了两个晚上,终于成功。
这里我使用的是budgetvm的1G openvz vps,centos7 64位。原本按照普遍的做法编译mono,各种失败,之后在官网上看到了官方推荐的安装方法,简单有效。
1.在root权限下执行
rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
yum-config-manager --add-repo http://download.mono-project.com/repo/centos/
(若上面第二行执行失败,先执行下面一行,再重新执行上面第二行)
yum -y install yum-utils
前两行执行成功后,执行安装mono所有软件包
yum –y install mono-complete
安装完后,执行
mono –V
会显示mono版本信息,这里会安装最新的稳定版。2016年3月20日最新稳定版mono-4.2.3.4
2.安装jexus5.8.1
cd /tmp wget linuxdot.net/down/jexus-5.8.1.tar.gz tar -zxvf jexus-5.8.1.tar.gz cd jexus-5.8.1 sudo ./install
此时启动jexus会启动失败,查看日志发现80端口被占用,查看80端口占用情况,发现是centos自带的apache占用了80端口
3.卸载占用80端口的apache
rpm -qa|grep httpd rpm -e httpd
4.启动jexus
启动:sudo /usr/jexus/jws start 停止:sudo /usr/jexus/jws stop 重启:sudo /usr/jexus/jws restart 重启指定网站:sudo /usr/jexus/jws restart siteName 停止指定网站:sudo /usr/jexus/jws stop siteName
由于centos防火墙设置问题,需要开放80端口:
vi /etc/sysconfig/iptables 在其中增加一行 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 保存后。重启防火墙 service iptables restart
此时,我们可以打开http://your ip/info 来查看你的jexus是否已成功启动,如http://www.jenyunet.com/info
5.配置网站
进入目录/usr/jexus/siteconf修改网站配置,具体见jexus官网。
6.支持的.net版本和mvc问题
有人说mono自4.2.1开始就已经支持mvc5了,但我把mvc5的网站放上去就报错,无法解决。
后来查看了下报错信息,发现mono-4.2.3.4支持的.net 对应版本是4.0.30319.17020 而.net4.5版本为4.0.30319.17929 .net4.5.1版本为4.0.30319.34003,
所以mono-4.2.3.4是不支持.net4.5及以后的版本的,所以mvc5也应该是不支持的
把网站从mvc5.2修改到mvc4,其中还报废了httpclint这个新玩意,传上去运行正常
相关推荐
《深入理解CentOS7 x86-64下的libstdc++.so.6.0.30库》 在Linux操作系统中,动态链接库扮演着至关重要的角色,它们提供了程序运行所需的共享函数和数据,使得多个程序可以共享系统资源,减少内存占用。其中,`...
运行pyton 代码 提示libstdc++.so.6 GLIBCXX 错误 本人在Centos6.x x86_64位系统上安装成功过 1、下载libstdc++.so.6.0.21 ...7 strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX 通过这个方法查找出对应的版本型号
对于Linux 7及以上版本,Oracle 11g的安装可能依赖`libstdc++.so.5.0.7`。这可能是因为Oracle 11g的编译和打包时使用的开发环境与这个特定版本的库有关,或者因为某些特定功能的实现需要这个版本的库。然而,`...
在Linux系统中,当一个C++程序运行时,如果没有找到所需的libstdc++.so.6.0.28,系统会报错,如"GLIBCXX_3.4.29 not found",这是因为程序依赖于该库中的特定函数或API。这时,可以通过安装对应的库包(如在Debian/...
《深入理解libstdc++.so.6.0.24:CentOS 7.X环境下的GCC编译核心》 在Linux开发环境中,GCC(GNU Compiler Collection)是不可或缺的一部分,它为C++编程语言提供了编译器和标准库。libstdc++.so.6.0.24是GCC中的一...
centos7的环境下安装了python3.7运行程序,在tensorflow报错“ImportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found” 下载新的进行安装和配置
在CentOS 7 x86_64平台上,安装GCC 11.0.2这一高级C++编译器时,会依赖一个至关重要的动态链接库——libstdc++.so.6.0.29。本文将深入探讨这个库的作用、它与GCC的关系以及如何在系统中管理和使用它。 libstdc++是...
在系统安装过程中,libstdc++.so.6.0.26通常随GCC一起安装,也可以单独通过包管理器(如apt-get for Debian/Ubuntu或yum for CentOS/RHEL)来安装。例如,在Ubuntu上,可以运行`sudo apt-get install libstdc++6`...
在CentOS或Linux的其他发行版中,有时会遇到系统默认的libstdc++版本过低,无法满足新软件的需求,这时就需要手动安装或升级到更高版本,如libstdc++.so.6.0.26。但是,需要注意的是,直接替换系统默认的库文件可能...
在Linux系统中,libstdc++.so.6.0.21是一个重要的动态链接库,对于64位CentOS 7操作系统来说,它是程序运行所必需的组件。这个特定版本——6.0.21,是在GCC 5.4.0版本下编译生成的。 首先,我们要理解动态链接库的...
nodejs 18在centos7上安装时, 报错需要glibc 2.28, 安装后仍然报错 需要 CXXABI-1.3.9 ./node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ./node) ./node: /lib64/libstdc++.so.6: ...
libstdc++.so.6.0.25
下载libstdc++.so.6.0.20,gcc-4.8,安装Tensorflow,http://ftp.de.debian.org/debian/pool/main/g/gcc-4.8/
libstdc++.so.6.0.26高版本,亲测可用 libstdc++.so.6.0.26高版本,亲测可用 libstdc++.so.6.0.26高版本,亲测可用 libstdc++.so.6.0.26高版本,亲测可用
centos7 下使用. Uncaught Exception: Error: Dynamic Linking Error: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /opt/baidunetdisk/./libkernel.so)
命令:strings /usr/lib64/libstdc++.so.6 | grep GLIBC GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_...
在安装某些应用时,需要用到libstdc++.so.6.0.21(例如:hugo-extend),但是redhat以及centos默认的都是最高支持到3.4.19,因此需要编译安装搞版本的gcc。此版本是通过gcc源码编译获得的,对应gcc的源码版本为:...