黄色电影一区二区,韩国少妇自慰A片免费看,精品人妻少妇一级毛片免费蜜桃AV按摩师 ,超碰 香蕉

ASP.NET Core快速入門之環(huán)境篇

asp.net core快速入門之環(huán)境篇

 

前言

asp.net core 是一個開源和跨平臺的框架,用于構(gòu)建如 web 應(yīng)用、物聯(lián)網(wǎng)(iot)應(yīng)用和移動后端應(yīng)用等連接到互聯(lián)網(wǎng)的基于云的現(xiàn)代應(yīng)用程序。asp.net core 應(yīng)用可運行于 .net core 和完整的 .net framework 之上。它整合了原來asp.net中的mvc和webapi框架,你可以在 windows、mac 和 linux 上跨平臺的開發(fā)和運行你的 asp.net core 應(yīng)用。

 

vmware虛擬機安裝

vmware哪里下載?360軟件管家就可以下載。然后網(wǎng)上找個序列號。

我這里安裝的是12.1.1

安裝很簡單一直下一步就好了。

 

centos7.3安裝

下載centos http://isoredirect.centos.org/centos/7/isos/x86_64/ 我們可以選擇163或阿里云的節(jié)點,速度會快點。

下載完成后打開vmware準備安裝

菜鳥可以選擇有界面的

選好后然后開始安裝,然后設(shè)置密碼,然后重啟就好了。

 

windows的客戶端軟件

下載安裝xshell https://www.baidu.com/baidu?word=xshell
下載安裝winscp https://www.baidu.com/baidu?word=winscp (你也可以使用xftp,記得選sftp,不然需要服務(wù)器支持ftp)
進入centos,右鍵

開始第一個命令。查看ip

ifconfig -a

接下來,可以全部由xshell操作。

打開xshell

然后輸入用戶名密碼登錄。(使用root登錄)

 

.net core1.1安裝

根據(jù)微軟資料 https://www.microsoft.com/net/core

在命令行執(zhí)行:

sudo yum install libunwind libicu  #(安裝libicu依賴)
curl -ssl -o dotnet.tar.gz https://go.microsoft.com/fwlink/?linkid=848821 #(下載sdk壓縮包) 根據(jù)網(wǎng)速,可能快可能慢
sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -c /opt/dotnet #(解壓縮)
sudo ln -s /opt/dotnet/dotnet /usr/local/bin #(創(chuàng)建鏈接)
dotnet new console -o hwapp   # 我們初始化一個示例hello world應(yīng)用程序 (這里稍微耗時點)
cd hwapp
dotnet restore
dotnet run   #運行應(yīng)用程序 

看到打印的hello world證明 .net core的環(huán)境已經(jīng)裝好了。

【小白技巧】

  • "#"是注釋
  • shirf + insert 粘貼 (不能ctrl + c v 有點不習(xí)慣)
  • ctrl + insert 復(fù)制

 

nginx1.12.1安裝

curl -o  nginx.rpm http://nginx.org/packages/centos/7/noarch/rpms/nginx-release-centos-7-0.el7.ngx.noarch.rpm
rpm -ivh nginx.rpm
yum install nginx #安裝

systemctl start nginx #啟動nginx
systemctl enable nginx #設(shè)置nginx的開機啟動

然后登錄 centos系統(tǒng) 打開瀏覽器 輸入 :192.168.233.129 (之前查到的ip)

看到這個頁面就代表安裝成功了。

 

配置防火墻

如果你在物理機的瀏覽器訪問,你會發(fā)現(xiàn)訪問不了。
那是因為centos的防火墻攔截了,我們打開端口。

firewall-cmd --zone=public --add-port=80/tcp --permanent #(開放80端口)
systemctl restart firewalld #(重啟防火墻以使配置即時生效)

然后訪問成功。

 

部署asp.net core應(yīng)用程序

打開vs2017 新建一個.net core 項目

右鍵發(fā)布(發(fā)布之前最好先在本地跑下看正常不)

然后打開我們的winscp(前面下載的)

點擊登錄,然后就可以看到centos系統(tǒng)的文件目錄了。然后隨便建個文件夾,準備放我們發(fā)布發(fā)好的程序。

右鍵上傳

然后命令運行

cd /home/netcoredemo #這個目錄 要輸入你自己對應(yīng)放的目錄
dotnet netcoredemo.dll # netcoredemo.dll 這個對應(yīng)你建的項目生成的dll

看到了5000 端口的一個網(wǎng)址,證明部署好了。
然后在虛擬機里面訪問 http://localhost:5000 ,ok。

 

nginx 配置

前面我們只說了nginx,并沒有說是干嘛的。nginx的作用有點先iis,是個web服務(wù)器。做轉(zhuǎn)發(fā)。
我們發(fā)現(xiàn)http://localhost:5000 可以訪問。但是通過ip卻不能訪問。那么我們現(xiàn)在就可以通過80訪問nginx,然后nginx再幫我們訪問5000。

打開路徑 /etc/nginx/conf.d
編輯default.conf 文件內(nèi)容替換為

server {
  listen 80;
  location / {
      proxy_pass http://localhost:5000;
      proxy_http_version 1.1;
      proxy_set_header upgrade $http_upgrade;
      proxy_set_header connection keep-alive;
      proxy_set_header host $host;
      proxy_cache_bypass $http_upgrade;
  }
}

將nginx添加至selinux的白名單,否則會報502錯誤。

nginx -s reload #使其即時生效
【注意】然后這里訪問下 http://192.168.233.130/ (對應(yīng)你自己的centos ip,這一步好重要。應(yīng)該是要先主動觸發(fā)這個502錯誤吧。)
yum install policycoreutils-python  #(選y)
cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -m mynginx
semodule -i mynginx.pp

selinux 對nginx訪問目錄的影響
https://www.cnblogs.com/mywebnumber/p/5572984.html

然后我們就可以在物理機上通過ip訪問了(不用帶端口了,直接80 然后 nginx 轉(zhuǎn)到了5000)。

 

配置守護服務(wù)(supervisor)

yum install python-setuptools
easy_install supervisor  #安裝supervisor
mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf  #配置supervisor

文件的最后

;[include]
;files = relative/directory/*.ini

改成(【注意】去掉;且不能有空格)

[include]
files = conf.d/*.conf

進入目錄 /etc/supervisor/ 新建 conf.d文件夾,conf.d文件夾下新建 netcoredemo.conf文件
內(nèi)容(【注意】看 第二行 第三行的 注釋,根據(jù)實際名字填入)

[program:netcoredemo]
command=dotnet netcoredemo.dll ; (注意)運行程序的命令
directory= /home/netcoredemo/ ; (注意 注意)對應(yīng)的你的項目的存放目錄,這個地方好多初學(xué)者搞錯?。。?
autorestart=true ; 程序意外退出是否自動重啟
stderr_logfile=/var/log/webapplication1.err.log ; 錯誤日志文件
stdout_logfile=/var/log/webapplication1.out.log ; 輸出日志文件
environment=aspnetcore_environment=production ; 進程環(huán)境變量
user=root ; 進程執(zhí)行的用戶身份
stopsignal=int
supervisord -c /etc/supervisor/supervisord.conf
ps -ef | grep netcoredemo  #【注意】netcoredemo是上面 program:netcoredemo 的命名 
supervisorctl reload  #重新加載

然后就好了,現(xiàn)在關(guān)掉那個5000界面也可以訪問。

 

配置supervisor開機啟動

打開目錄 /usr/lib/systemd/system/ 新建文件 supervisord.service

內(nèi)容:

# dservice for systemd (centos 7.0+)
# by et-cs (https://github.com/et-cs)
[unit]
description=supervisor daemon

[service]
type=forking
execstart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
execstop=/usr/bin/supervisorctl shutdown
execreload=/usr/bin/supervisorctl reload
killmode=process
restart=on-failure
restartsec=42s

[install]
wantedby=multi-user.target

執(zhí)行命令:

systemctl enable supervisord  
systemctl is-enabled supervisord #來驗證是否為開機啟動

systemctl stop supervisord      #關(guān)閉
systemctl disable supervisord #禁用

到此,完工。現(xiàn)在重新電腦什么都不用管,直接可以訪問部署好的網(wǎng)站。

 

mysql5.6.37安裝

http://www.cnblogs.com/starof/p/4680083.html (我用的方法二)

 

安裝rar壓縮

下載 http://www.rarsoft.com/download.htm

把文件放服務(wù)器上。然后cd到這個目錄執(zhí)行

tar -zxvf rarlinux-x64-5.4.0.tar.gz # rarlinux-x64-5.4.0.tar.gz是你下載的文件名
cd rar
make
rar #安裝

安裝好了后我們就可以打命令解壓文件了

cd #跳到壓縮文件目錄
rar x ceshi.rar     #解壓到當前文件夾 ceshi.rar是壓縮文件名
rar a abc.rar ceshi #壓縮文件夾 到 abc.rar

在centos中安裝完rar命令,會自動安裝zip命令

cd /home #進入/home目錄
zip -r mydata.zip mydata      #把/home目錄下面的mydata目錄壓縮為mydata.zip
unzip mydata.zip -d mydatabak #把/home目錄下面的mydata.zip解壓到mydatabak目錄里面
zip -r abc123.zip abc 123.txt #把/home目錄下面的abc文件夾和123.txt壓縮成為abc123.zip
unzip wwwroot.zip             #把/home目錄下面的wwwroot.zip直接解壓到/home目錄里面
unzip abc\*.zip               #把/home目錄下面的abc12.zip、abc23.zip、abc34.zip同時解壓到/home目錄里面
unzip -v wwwroot.zip          #查看把/home目錄下面的wwwroot.zip里面的內(nèi)容
unzip -t wwwroot.zip          #驗證/home目錄下面的wwwroot.zip是否完整
unzip -j wwwroot.zip          #把/home目錄下面wwwroot.zip里面的所有文件解壓到第一級目錄

 

常用linux命令

cd                 #目錄跳轉(zhuǎn)
cd /               #回到上一個目錄
ls                 #查看目錄下的文件
df -h              #查看文件使用情況
mkdir              #創(chuàng)建文件夾文件夾
vi                 # 編輯文件
:wq!               #強制保存文件,并退出vi

ifconfig -a        #查看ip
free #查看系統(tǒng)資源使用情況 http://blog.csdn.net/zhongluhuaok/article/details/52804187

firewall-cmd --zone=public --add-port=80/tcp --permanent     #開放80端口,也可以是其他端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent  # 關(guān)閉端口
systemctl restart firewalld                                  #重啟防火墻,使其生效

service mysqld restart #重啟mysql
nginx -s reload        # nginx 生效
reboot                 # 重啟系統(tǒng)

supervisorctl start program_name   #啟動某個進程(program_name=你配置中寫的程序名稱)
supervisorctl stop program_name    #停止某一進程 (program_name=你配置中寫的程序名稱)
supervisorctl reload               #重新啟動配置中的所有程序
supervisorctl stop all             #停止全部進程
supervisorctl update               #更新新的配置到supervisord    
supervisorctl restart program_name #重啟某一進程 (program_name=你配置中寫的程序名稱)
supervisorctl                      #查看正在守候的進程
http://blog.csdn.net/shudaqi2010/article/details/51153961

clear          #刷新終端屏幕 (或者 ctrl + l)
exit           #退出
shift + insert #粘貼
ctrl + insert  #復(fù)制

補充

centos上升級 .net core 2.0 需要先執(zhí)行官網(wǎng)命令

curl -ssl -o dotnet.tar.gz https://aka.ms/dotnet-sdk-2.0.0-linux-x64
mkdir -p ~/dotnet && tar zxf dotnet.tar.gz -c ~/dotnet
export path=$path:$home/dotnet

然后再刪除原有文件夾

rm -rf /opt/dotnet                              #刪除原有文件夾
rm -rf /usr/local/bin/dotnet                    #刪除原來定義的dotnet命令
sudo ln -s /root/dotnet/dotnet /usr/local/bin   #重新定義dotnet命令

項目程序也要升級到2.0,不然dotnet dll不能成功。

以上就是asp.net core快速入門之環(huán)境篇的詳細內(nèi)容,更多關(guān)于asp.net core環(huán)境搭建的資料請關(guān)注碩編程其它相關(guān)文章!

下一節(jié):asp.net core快速入門之實戰(zhàn)篇

asp.net編程技術(shù)

相關(guān)文章