美文网首页
在CentOs8上安装,配置Apache,部署.net Core

在CentOs8上安装,配置Apache,部署.net Core

作者: 早睡使人快乐 | 来源:发表于2020-05-13 11:23 被阅读0次

    安装Apache和Mysql

    Mysql

    Apache

    配置Apache

    官方文档

    a2enmod proxy proxy_http proxy_html rewrite
    

    启用apache模块,但是centos8下是没有这个命令的a2enmod
    这就很尴尬了,我linux学的不是很好,各种翻档案.....
    目录结构
    apache rewrite mod的文档
    如何在centos8中添加模块

    在 /etc/httpd/conf/httpd.conf 中添加一行
    LoadModule rewrite_module modules/mod_rewrite.so
    保存
    在 <Directory /var/www/html>这一节修改Allowoverride 的值改成All,允许.htaccess所有指令
    我们通常利用Apache的rewrite模块对URL进行重写,rewrite规则会写在 .htaccess 文件里。但要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。
    同样的方法来安装proxy_html 和 proxy

    echo 'LoadModule proxy_http_module  modules/mod_proxy_http.so' >> /etc/httpd/conf/httpd.conf 
    
    echo 'LoadModule proxy_http_module  modules/mod_proxy.so' >> /etc/httpd/conf/httpd.conf 
    

    但是proxy_html是一个第三方的模块,只能手动下载

    yum install mod_proxy_html
    echo 'LoadModule proxy_html_module modules/mod_proxy_html.so' >> /etc/httpd/conf/httpd.conf 
    

    安装完成,重启apache服务

    service httpd restart
    

    接下来创建虚拟主机

    创建虚拟主机文件

    sudo nano /etc/httpd/conf.d/reactivities.conf
    

    写入如下内容

    <VirtualHost *:80>
    ProxyPreserveHost On
    ProxyPass / http://127.0.0.1:5000/
    ProxyPassReverse / http://127.0.0.1:5000/
    
    ErrorLog /var/log/httpd/reactivities-error.log
    CustomLog /var/log/httpd/reactivities-access.log common
    
    RewriteEngine on
    RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
    RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC]
    RewriteRule /(.*) ws://127.0.0.1:5000/$1 [P]
    
    </VirtualHost>
    

    启用站点

    使用vsCode的Deploy(reloaded)插件通过sftp上传本地的虚拟机

    image.png

    在.vscode文件夹中添加settings.json文件配置

    dotnet publish -c Release -o publish --self-contained false Reactivities.sln
    

    生成发布文件夹
    在服务器(虚拟机)中查看文件是否上传成功


    image.png

    似乎上传到了单独的publish文件夹里面,暂时没找到解决方案

    创建service文件

    sudo nano /etc/systemd/system/kestrel-web.service
    

    写入如下内容


    image.png

    注意 " : "要用双下划线代替
    完成后启用kestrel服务

    sudo systemctl enable kestrel-web.service
    

    确认状态

    sudo systemctl status kestrel-web.service
    
    报错
    报错了,赶紧google下
    更换一下路径
    /usr/local/bin/dotnet 换成 /usr/bin/dotnet
    重新启动
    报错 '
    修改user为root
    仍然报错
    找了半天,终于发现原来是路径错了,应该是 /var/www/html/reactivities/publish
    这个故事告诉我们新手还是不要用最新版本的centos,还是按照官方的文档使用centos7或者unbantu好一点,不然很容易在这种简单的问题上浪费大量时间
    image.png

    相关文章

      网友评论

          本文标题:在CentOs8上安装,配置Apache,部署.net Core

          本文链接:https://www.haomeiwen.com/subject/khmhphtx.html