这可能是最low的发布dotnet core站点到centos7教程

时间:2021-08-10 05:02:55

前言

不得不说:我在chrome上写了好长一段,贴了23张图,然后一个crash。。我想说我电脑上的chrome已经crash太多次了
这可能是最low的发布dotnet core站点到centos7教程
以后一定要搞离线编辑的。

正文

什么是.net core,balalala,(23333)。

什么是CentOS 7,为什么选这个,balalala,(2333)。。。

--------------------华丽分割线------------------------

不瞎扯,总结一下这几天断断续续尝试下来的历程,整理一下步骤,如果里面有什么我没说清楚的,那应该是我真的不懂。
从安装虚拟机开始。。。

--------------------华丽分割线------------------------

这里才是真的正文

  1. 准备工作,去下个系统和虚拟机。
  2. 系统在这里下,我这里用的是最小化的安装镜像,里面有aliyun的,网易的,看在玩过阴阳师的份上,就163了,这个. 下下来是700多MB,有点xp的味道。
  3. 然后下虚拟机,我这里用的是 VMware Fusion
    这可能是最low的发布dotnet core站点到centos7教程
    官网就可以下载。

  4. 安装过程就不说了。
  5. 装好之后启动,弹出创建虚拟机的界面 这可能是最low的发布dotnet core站点到centos7教程,选这个创建新的虚拟机,点继续。
  6. 然后选操作系统,这里是64位的CentOS 这可能是最low的发布dotnet core站点到centos7教程,然后继续
  7. 选择一个虚拟磁盘,选创建一个新的,这可能是最low的发布dotnet core站点到centos7教程,继续
  8. 然后就结束了,什么都没有选。。。这可能是最low的发布dotnet core站点到centos7教程, 完成。
  9. 选择保存的路径,也没有改,这可能是最low的发布dotnet core站点到centos7教程, Save。
  10. 然后系统就启动了,loading了一段时间后错误提示就出来了,提示没有找到系统 这可能是最low的发布dotnet core站点到centos7教程.
  11. 点这个螺丝刀设置,然后先选这个cd/dvd 这可能是最low的发布dotnet core站点到centos7教程.
  12. 下拉框里面选一开始下载的iso镜像,然后把连接cd驱动器的钩打上 这可能是最low的发布dotnet core站点到centos7教程.
  13. 然后点这个显示全部回去上一级。这可能是最low的发布dotnet core站点到centos7教程.
  14. 点启动磁盘,然后选这个cd,我们要设置cd为启动项。然后就可以点重启了。这可能是最low的发布dotnet core站点到centos7教程.
  15. 然后就到安装界面了,这里选第一个,第二个是先测试一下这个安装介质,再安装系统,因为我们是ISO文件安装,所以一般不会有问题。这可能是最low的发布dotnet core站点到centos7教程.
  16. 进到安装界面了,选语言。 这可能是最low的发布dotnet core站点到centos7教程. 中文吧,后面可以少设置一个时区。点继续。
  17. 系统选项安装位置那里有个感叹号,装不了。 这可能是最low的发布dotnet core站点到centos7教程。点进去。
  18. 选一下这个磁盘。 这可能是最low的发布dotnet core站点到centos7教程.点完成。
  19. 然后就可以开始安装了。 这可能是最low的发布dotnet core站点到centos7教程
  20. 安装进程已经启动,root密码要设置一下。root就想windows的Administrator 这可能是最low的发布dotnet core站点到centos7教程
  21. 设置的密码比较简单,要点两次完成。 这可能是最low的发布dotnet core站点到centos7教程
  22. 等待装完,点重启。 这可能是最low的发布dotnet core站点到centos7教程
  23. 启动了之后选择系统登录。 这可能是最low的发布dotnet core站点到centos7教程
  24. 我不晓得第二个是干嘛用的。。所以选第一个登录。
  25. 然后就可以登录了,用户名root。 这可能是最low的发布dotnet core站点到centos7教程
  26. 输了用户名和密码之后没有什么密码错误之类的提示,就表示登录成功了。linx里面没有提示就是最好的提示。 这可能是最low的发布dotnet core站点到centos7教程
  27. 系统进来了,下一步干嘛。。配置网络。先用ip addr命令试试。好像没有看到192.168之类的东西。。这可能是最low的发布dotnet core站点到centos7教程
  28. ip addr 命令出来有两项,一个lo,一个ens33。
  29. 然后输入 cd /etc/sysconfig/network-scripts && ls . 这个命令表示change direcotry 到指定目录下,然后list出下面的文件。这可能是最low的发布dotnet core站点到centos7教程
  30. 打命令 vi ifcfg-ens33 回车。 表示用vi编辑器编辑 ifcfg-ens33这个文件。(关于怎么用vi,自行百度了;为什么是ens这个文件,因为他是我们的一个网卡).
  31. 把onboot=no 改成 onboot=yes,:wq 保存退出.这可能是最low的发布dotnet core站点到centos7教程
  32. 打命令 service network restart 重启一下这个网络服务。如果回车之后看到OK,那恭喜,否则,就google吧。这可能是最low的发布dotnet core站点到centos7教程
  33. 如果网络服务启动不成功,检查一下虚拟机的网络设置。如果是hyper-v用户,记得添加了虚拟机之后试试重新加一块网卡,然后选新加的网卡,(我在这里花了好长时间。。。).点螺丝刀或者边上那个箭头都是ok的。。这可能是最low的发布dotnet core站点到centos7教程
  34. 然后再用ip addr 看下地址信息。可以看到172.16.170.128(地址随意,,系统分配的)这可能是最low的发布dotnet core站点到centos7教程
  35. ping一下百度,看网络情况,记得按control+c结束,否则一直发包。这可能是最low的发布dotnet core站点到centos7教程
  36. 网络通了之后外面试试机器能不能ssh上去。
  37. ssh root@172.16.170.128 回车,ka,出错了 这可能是最low的发布dotnet core站点到centos7教程
  38. 提示说key已经变了,因为虚拟机重新装的,所以要用ssh-keygen命令重新生成一下。ssh-keygen -R 172.16.170.128 。然后回车就好。。这可能是最low的发布dotnet core站点到centos7教程
  39. 提示已经更新。
  40. 再连接试试。打个yes,回车,输入密码,连接上了。这可能是最low的发布dotnet core站点到centos7教程
  41. 然后干什么呢,,先更新一下系统吧。。 yum update -y .第一次,时间有点久... 这可能是最low的发布dotnet core站点到centos7教程 看到这个完毕就好了 这可能是最low的发布dotnet core站点到centos7教程
  42. 接下来先把dotnet core装到机器上。
  43. 地址.官方地址看这里。我们自己来跑一遍。
  44. 打命令 sudo yum install libunwind libicu 。sudo表示管理员方式,不过我们已经是root,可以不用打。yum是用来管理系统的软件的。这个命令表示要安装 libunwind 和 libicu.打个y确认安装。这可能是最low的发布dotnet core站点到centos7教程
  45. 然后是 curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?linkid=848821 去下载core的安装包,回车,没有提示就是最好的提示。这可能是最low的发布dotnet core站点到centos7教程
  46. 先在根目录下opt文件夹中心间dotnet文件夹,然后是把压缩包解压到这里面。 sudo mkdir -p /opt/dotnet && sudo tar -zxf dotnet.tar.gz -C /opt/dotnet (tar命令参数-zxf)。回车,依旧没有提示。
  47. sudo ln -s /opt/dotnet/dotnet /usr/local/bin 给这个dotnet文件夹中的dotnet文件和 /usr/local/bin做关联。相当于添加了path环境变量.这可能是最low的发布dotnet core站点到centos7教程
  48. 然后dotnet命令试试效果。welcome,,这样就表示好了。这可能是最low的发布dotnet core站点到centos7教程
  49. 环境装好了,要架web服务器了.根据教程.
  50. 我忍不住贴一下这个顶端的介绍。。。Apache is a very popular HTTP server and can be configured as a proxy to redirect HTTP traffic similar to nginx. In this guide, we will learn how to set up Apache on CentOS 7 and use it as a reverse proxy to welcome incoming connections and redirect them to the ASP.NET Core application running on Kestrel. For this purpose, we will use the mod_proxy extension and other related Apache modules.
  51. 根据介绍,首先是Apache很NB(当然),然后我们要把过来的请求转发到运行在Kestrel上的ASP.NET core应用程序上(这个很重要)。
  52. 先装一下httpd 和 mod_ssl。 sudo yum -y install httpd mod_ssl 这可能是最low的发布dotnet core站点到centos7教程
  53. httpd是什么? Apache Hypertext Transfer Protocol Server
  54. mod_ssl是什么?mod_ssl combines the flexibility of Apache with the security of OpenSSL.' 就是说mod_ssl汇聚了apache的便利性和openssl的安全性
  55. 装好了要配置服务,和配置ip一样。
  56. 这里先装一个vim编辑器,yum install vim -y (vim是高级版本的vi,然后balabala..)
  57. cd /etc/httpd/conf/ && vim httpd.conf
  58. 改一下监听端口和服务器名称,我们准备把站点架在8001端口,:wq保存退出。这可能是最low的发布dotnet core站点到centos7教程这可能是最low的发布dotnet core站点到centos7教程
  59. 顺道就直接apachectl configtest一下,看看改完之后语法有没有问题。这可能是最low的发布dotnet core站点到centos7教程
  60. systemctl restart httpd.service用命令systemctl status httpd.service查看一下状态,出错了。提示没有权限绑定到端口8001.这可能是最low的发布dotnet core站点到centos7教程
  61. 因为8001这个端口不在系统默认可绑定的端口里面。所以要改设置,怎么改,装个软件,semanage。 yum -y install policycoreutils-python.
  62. 装好之后试试semanage命令,semanage port -a -t http_port_t -p tcp 8001。回车,没有错误提示,OK。这可能是最low的发布dotnet core站点到centos7教程
  63. systemctl restart httpd.service 启动httpd服务,然后systemctl status httpd.service查看服务状态。active,正在运行。这可能是最low的发布dotnet core站点到centos7教程
  64. 有个错误提示。 先systemctl stop httpd.service 停止apache服务,然后 service network restart 重启网络服务,然后systemctl start httpd.service,再systemctl status httpd.service查看,OK了。 (不行就重启吧)
  65. 有点兴奋,外面机器去连连看,,,地址栏里面172.16.170.128:8001回车,,拒绝连接。。。
  66. firewall-cmd --zone=public --add-port=8001/tcp --permanent 把8001端口开起来。这可能是最low的发布dotnet core站点到centos7教程
  67. firewall-cmd --reload 重新载一下配置 这可能是最low的发布dotnet core站点到centos7教程
  68. 外面地址了访问,OK了,666.这可能是最low的发布dotnet core站点到centos7教程
  69. 然后需要把程序发布然后传到这个服务器上。
  70. 打开vscode,(这里强烈推荐vscode。。。balabala). 调出终端,然后dotnet new mvc --auth None --framework netcoreapp1.1 新建一个默认的项目。这可能是最low的发布dotnet core站点到centos7教程
  71. dotnet restore, dotnet build,木有异常,就可以发布了。这可能是最low的发布dotnet core站点到centos7教程
  72. dotnet publish。发布成功. 这可能是最low的发布dotnet core站点到centos7教程
  73. cd 到发布的路径,然后ls看一下,好多发出来的新文件。。
  74. 然后是scp命令把文件copy到centos服务器上。 scp -r * root@172.16.170.129:/var/www/html 把当前目录下的所有文件用root账号复制到/var/www/html路径下面。这可能是最low的发布dotnet core站点到centos7教程
  75. 去服务器上看看文件是否存在。cd /var/www/html/ && ls 文件存在。这可能是最low的发布dotnet core站点到centos7教程
  76. dotnet publishTest2.dll 试试应用是否可以正常启动。这可能是最low的发布dotnet core站点到centos7教程
  77. 测试OK。然后去看一下很重的第51点。 做代理。core是运行在Kestrel上的,所以要把apache过来的请求转发到Kestrel上。
  78. 命令 vim /etc/httpd/conf.d/publishTest2.conf,内容 ProxyPass / http://localhost:5000/ (换行) ProxyPassReverse / http://localhost:5000/ :wq保存退出。这可能是最low的发布dotnet core站点到centos7教程
  79. apachectl configtest 一下,语法正确。这可能是最low的发布dotnet core站点到centos7教程
  80. 重启一下httpd服务, systemctl restart httpd.service 这可能是最low的发布dotnet core站点到centos7教程
  81. 再试着访问http://172.16.170.129:8001/,提示service unavailable.
  82. 命令: setsebool httpd_can_network_connect 1 回车。 图找不到了。。。
  83. ps 命令看一下我们的dotnet是否已经启动。木有进程。这可能是最low的发布dotnet core站点到centos7教程
  84. 到我们的站点目录下,然后dotnet publishTest2.dll & (注意最后有个&,这样就会到后台执行这个进程了)这可能是最low的发布dotnet core站点到centos7教程
  85. 刷新一下http://172.16.170.129:8001/ 额,,出错了,,提示。。这可能是最low的发布dotnet core站点到centos7教程
  86. 这个好办,忘记拷文件夹了。。。改一下命令 scp -r * root@172.16.170.129:/var/www/html 回车,输入密码,OK。
  87. 再刷新一下,,界面出来了。
  88. 等等,好想样式不对,,少了比如图片之类的一些东西。。
  89. 重启一下httpd服务,重启一下dotnet 站点,然后就好了。。。尴尬。。。。这可能是最low的发布dotnet core站点到centos7教程
  90. 总算架起来了。。。