Apache的主要目錄和配置文件詳解

来源:http://www.cnblogs.com/qianyuliang/archive/2017/05/09/6831942.html
-Advertisement-
Play Games

一、Apache 主要配置文件註釋Apache的主配置文件:/etc/httpd/conf/httpd.conf預設站點主目錄:/var/www/html/Apache伺服器的配置信息全部存儲在主配置文件/etc/httpd/conf/httpd.conf中,這個文件中的內容非常多,用wc命令統計一 ...


一、Apache 主要配置文件註釋
Apache的主配置文件:/etc/httpd/conf/httpd.conf
預設站點主目錄:/var/www/html/
Apache伺服器的配置信息全部存儲在主配置文件/etc/httpd/conf/httpd.conf中,這個文件中的內容非常多,用wc命令統計一共有1009行,其中大部分是以#開頭的註釋行。

ServerTokens OS
在出現錯誤頁的時候是否顯示伺服器操作系統的名稱,ServerTokens Prod為不顯示

ServerRoot "/etc/httpd"
用於指定Apache的運行目錄,服務啟動之後自動將目錄改變為當前目錄,在後面使用到的所有相對路徑都是想對這個目錄下

User daemon                          # apache的用戶,預設為daemon
Group daemon                         # apache的用戶,預設為daemon

PidFile run/httpd.pid
記錄httpd守護進程的pid號碼,這是系統識別一個進程的方法,系統中httpd進程可以有多個,但這個PID對應的進程是其他的父進程

Timeout 60
伺服器與客戶端斷開的時間

KeepAlive Off
是否持續連接(因為每次連接都得三次握手,如果是訪問量不大,建議打開此項,如果網站訪問量比較大關閉此項比較好),修改為:KeepAlive On 表示允許程式性聯機

MaxKeepAliveRequests 100
表示一個連接的最大請求數

KeepAliveTimeout 15
斷開連接前的時間

<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>
系統預設的模塊,表示為每個訪問啟動一個進程(即當有多個連接公用一個進程的時候,在同一時刻只能有一個獲得服務)。
StartServer開始服務時啟動8個進程,最小空閑5個進程,最多空閑20個進程。
MaxClient限制同一時刻客戶端的最大連接請求數量超過的要進入等候隊列。
MaxRequestsPerChild每個進程生存期內允許服務的最大請求數量,0表示永不結束

<IfModule worker.c>
StartServers         4
MaxClients         300
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>
為Apache配置線程訪問,即每對WEB服務訪問啟動一個線程,這樣對記憶體占用率比較小。
ServerLimit伺服器允許配置進程數的上限。
ThreadLimit每個子進程可能配置的線程上限
StartServers啟動兩個httpd進程,
MaxClients同時最多能發起250個訪問,超過的要進入隊列等待,其大小有ServerLimit和ThreadsPerChild的乘積決定
ThreadsPerChild每個子進程生存期間常駐執行線程數,子線程建立之後將不再增加
MaxRequestsPerChild每個進程啟動的最大線程數,如達到限制數時進程將結束,如置為0則子線程永不結束

Listen 80
監聽的埠,如有多塊網卡,預設監聽所有網卡

LoadModule auth_basic_module modules/mod_auth_basic.so
......
LoadModule version_module modules/mod_version.so
啟動時載入的模塊

Include conf.d/*.conf
載入的配置文件

啟動服務後轉換的身份,在啟動服務時通常以root身份,然後轉換身份,這樣增加系統安全

ServerAdmin root@localhost    #管理員的郵箱,如果出現問題,會在首頁顯示

#ServerName www.example.com:80
預設是不需要指定的,伺服器通過名字解析過程來獲得自己的名字,但如果解析有問題(如反向解析不正確),或者沒有DNS名字,也可以在這裡指定IP地址,當這項不正確的時候伺服器不能正常啟動。前面啟動Apache時候提示正在啟動  httpd:httpd: apr_sockaddr_info_get() failed forjustin httpd: Could not  reliably determine the server's fully qualified domain name, using  127.0.0.1forServerName,解決方法就是啟動該項把www.example.com:80修改為自己的功能變數名稱或者直接修改為localhost

UseCanonicalName Off
如果客戶端提供了主機名和埠,Apache將會使用客戶端提供的這些信息來構建自引用URL。這些值與用於實現基於功能變數名稱的虛擬主機的值相同,並且對於同樣的客戶端可用。CGI變數SERVER_NAME和SERVER_PORT也會由客戶端提供的值來構建

DocumentRoot "/var/www/html"    # apache的預設web站點目錄路徑,結尾不要添加斜線

<Directory />     #行為對根目錄的限制
    Options FollowSymLinks   # followsymlinks表示允許使用符號鏈接,預設為禁用
    AllowOverride None     # 表示禁止用戶對目錄配置文件(.htaccess進行修改)重載,普通站點不建議開啟
</Directory>

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
對/var/www/html目錄的一個許可權的設置,options中Indexes表示當網頁不存在的時候允許索引顯示目錄中的文件,FollowSymLinks是否允許訪問符號鏈接文件。有的選項有ExecCGI表是否使用CGI,如Options  Includes ExecCGI  FollowSymLinks表示允許伺服器執行CGI及SSI,禁止列出目錄。SymLinksOwnerMatch表示當符號鏈接的文件和目標文件為同一用戶擁有時才允許訪問。AllowOverrideNone表示不允許這個目錄下的訪問控制文件來改變這裡的配置,這也意味著不用查看這個目錄下的訪問控制文件,修改為:AllowOverride  All  表示允許.htaccess。Order對頁面的訪問控制順序後面的一項是預設選項,如allow,deny則預設是deny,Allowfromall表示允許所有的用戶,通過和上一項結合可以控制對網站的訪問控制

<IfModule mod_userdir.c>
    UserDir disabled
</IfModule>
是否允許用戶訪問其家目錄,預設是不允許

#<Directory /home/*/public_html>
#    AllowOverride FileInfo AuthConfig Limit
#    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
#    <Limit GET POST OPTIONS>
#        Order allow,deny
#        Allow from all
#    </Limit>
#    <LimitExcept GET POST OPTIONS>
#        Order deny,allow
#        Deny from all
#    </LimitExcept>
#</Directory>
如果允許訪問用戶的家目錄中的網頁文件,則取消以上註釋,並對其中進行修改

DirectoryIndex index.html index.html.var    #指定所要訪問的主頁的預設主頁名字,預設首頁文件名為index.html

AccessFileName .htaccess     #定義每個目錄下的訪問控制文件名,預設為.htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>
控制不讓web上的用戶來查看.htpasswd和.htaccess這兩個文件

TypesConfig /etc/mime.types     #用於設置保存有不同MIME類型數據的文件名

DefaultType text/plain   #預設的網頁的類型

<IfModule mod_mime_magic.c>
#   MIMEMagicFile /usr/share/magic.mime
     MIMEMagicFile conf/magic
</IfModule>
指定判斷文件真實MIME類型功能的模塊

HostnameLookups Off   #當打開此項功能時,在記錄日誌的時候同時記錄主機名,這需要伺服器來反向解析功能變數名稱,增加了伺服器的負載,通常不建議開啟

#EnableMMAP off
是否允許記憶體映射:如果httpd在傳送過程中需要讀取一個文件的內容,它是否可以使用記憶體映射。如果為on表示如果操作系統支持的話,將使用記憶體映射。在一些多核處理器的系統上,這可能會降低性能,如果在掛載了NFS的DocumentRoot上如果開啟此項功能,可能造成因為分段而造成httpd崩潰

#EnableSendfile off
這個指令控制httpd是否可以使用操作系統內核的sendfile支持來將文件發送到客戶端。預設情況下,當處理一個請求並不需要訪問文件內部的數據時(比如發送一個靜態的文件內容),如果操作系統支持,Apache將使用sendfile將文件內容直接發送到客戶端而並不讀取文件

ErrorLog logs/error_log   #錯誤日誌存放的位置
LogLevel warn    #Apache日誌的級別

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
定義了日誌的格式,並用不同的代號表示

#CustomLog logs/access_log common
CustomLog logs/access_log combined
說明日誌記錄的位置,這裡面使用了相對路徑,所以ServerRoot需要指出,日誌位置就存放在/etc/httpd/logs

ServerSignature On    #定義當客戶請求的網頁不存在,或者錯誤的時候是否提示apache的版本的一些信息

Alias /icons/ "/var/www/icons/"   #定義一些不在DocumentRoot下的文件,而可以將其映射到網頁根目錄中,這也是訪問其他目錄的一種方法,但在聲明的時候切記目錄後面加”/”

<Directory "/var/www/icons">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
定義對/var/www/icons/的許可權,修改為 Options MultiViews FollowSymLinks表示不在瀏覽器上顯示樹狀目錄結構

<IfModule mod_dav_fs.c>
     # Location of the WebDAV lock database.
     DAVLockDB /var/lib/dav/lockdb
</IfModule>
對mod_dav_fs.c模塊兒的管理

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"   #對CGI模塊兒的的別名,與Alias相似

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>
對/var/www/cgi-bin文件夾的管理,方法同上

# Redirect old-URI new-URL
Redirect參數是用來重寫URL的,當瀏覽器訪問伺服器上的一個已經不存在的資源的時候,伺服器返回給瀏覽器新的URL,告訴瀏覽器從該URL中獲取資源。這主要用於原來存在於伺服器上的文檔改變位置之後,又需要能夠使用老URL能訪問到原網頁

IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
...
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
當一個HTTP請求的URL為一個目錄的時候,伺服器返回這個目錄中的索引文件,如果目錄中不存在索引文件,並且伺服器有許可顯示目錄文件列表的時候,就會顯示這個目錄中的文件列表,為了使得這個文件列表能具有可理解性,而不僅僅是一個簡單的列表,就需要前這些參數。如果使用了IndexOptionsFancyIndexing選項,可以讓伺服器針對不同的文件引用不同的圖標。如果沒有就使用DefaultIcon定義預設圖標。同樣,使用AddDescription可以為不同類型的文檔介入描述

AddLanguage ca .ca
......
AddLanguage zh-TW .zh-tw
添加語言

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
Apache支持的語言

AddDefaultCharset UTF-8  #預設支持的語言

#AddType application/x-tar .tgz   #支持的應用如果想支持對php的解析添加這樣一行

#AddEncoding x-compress .Z
#AddEncoding x-gzip .gz .tgz
支持對以.Z和.gz.tgz結尾的文件

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
添加對上述兩種文件的應用

#AddHandler cgi-script .cgi   #修改為:AddHandler cgi-script .cgi .pl 表示允許擴展名為.pl的CGI腳本運行
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
添加動態處理類型為server-parsed由伺服器預先分析網頁內的標記,將標記改為正確的HTML標識

#ErrorDocument 404 /missing.html   #當伺服器出現404錯誤的時候,返回missing.html頁面
Alias /error/ "/var/www/error/"   #賦值別名

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
    <Directory "/var/www/error">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en es de fr
        ForceLanguagePriority Prefer Fallback
    </Directory>
對/var/www/error網頁的許可權及操作

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0
.....
設置特殊的參數,以保證對老版本瀏覽器的相容,並支持新瀏覽器的特性

#NameVirtualHost *:80   #如果啟用虛擬主機的話,必須將前面的註釋去掉,而且,第二部分的內容都可以出現在每個虛擬主機部分。
# VirtualHost example:
#<VirtualHost *:80>
#    ServerAdmin [email protected]
#    DocumentRoot /www/docs/www.linuxidc.com
#    ServerName www.linuxidc.com
#    ErrorLog logs/www.linuxidc.com-error_log
#    CustomLog logs/www.linuxidc.com-access_log common
#</VirtualHost>
www.linuxidc.com替換為你的網址

二、Apache擴展的配置文件
$APACHE_HOME/conf/extra          # apache擴展的配置文件
[root@extra]# ll
total 56
-rw-r--r-- 1 root root  2859 Jan 10 01:49 httpd-autoindex.conf
-rw-r--r-- 1 root root  1753 Jan 10 01:49 httpd-dav.conf
-rw-r--r-- 1 root root  2344 Jan 10 01:49 httpd-default.conf
-rw-r--r-- 1 root root  1103 Jan 10 01:49 httpd-info.conf
-rw-r--r-- 1 root root  5078 Jan 10 01:49 httpd-languages.conf
-rw-r--r-- 1 root root   932 Jan 10 01:49 httpd-manual.conf
-rw-r--r-- 1 root root  3789 Jan 10 01:49 httpd-mpm.conf
-rw-r--r-- 1 root root  2207 Jan 10 01:49 httpd-multilang-errordoc.conf
-rw-r--r-- 1 root root 11185 Jan 10 01:49 httpd-ssl.conf
-rw-r--r-- 1 root root   817 Jan 10 01:49 httpd-userdir.conf
-rw-r--r-- 1 root root  1507 Jan 10 01:49 httpd-vhosts.conf # 虛擬主機配置文件


三、httpd-vhosts.conf虛擬主機配置文件註釋
[root@extra]# egrep -v "^.*#|^$" httpd-vhosts.conf |nl
     1  NameVirtualHost *:80                                # 基於名稱的虛擬主機配置( *:80表示監聽本機所有ip)
     2  <VirtualHost *:80>                                  # 定義一個虛擬主機
     3      ServerAdmin [email protected]    # 配置管理員郵箱
     4      DocumentRoot "/application/apache2.2.22/docs/dummy-host.example.com"  # 程式的站點目錄
     5      ServerName dummy-host.example.com               # 功能變數名稱服務,需要apache mode_alias模塊支持
     6      ServerAlias www.dummy-host.example.com          # 虛擬主機別名
     7      ErrorLog "logs/dummy-host.example.com-error_log"# 錯誤的日誌路徑
     8      CustomLog "logs/dummy-host.example.com-access_log" common  #訪問日誌配置(生產環境我們用combined格式代替common格式)
     9  </VirtualHost>
    10  <VirtualHost *:80>
    11      ServerAdmin [email protected]
    12      DocumentRoot "/application/apache2.2.22/docs/dummy-host2.example.com"
    13      ServerName dummy-host2.example.com
    14      ErrorLog "logs/dummy-host2.example.com-error_log"
    15      CustomLog "logs/dummy-host2.example.com-access_log" common
    16  </VirtualHost>


四、Apache服務存放站點的目錄
$APACHE_HOME/apache/htdocs              # 預設存放網頁的路徑,輸入IP 到此目錄 能夠見到it's wroks! 就是此目錄
[root@htdocs]# less  index.html
<html><body><h1>It works!</h1></body></html>




五、Apache服務目錄結構說明
[root@htdocs]# ls ../
 bin  build  cgi-bin  conf  error  htdocs  icons  include  lib  logs  man  manual  modules
bin啟動文件目錄說明
|-- bin                    # apache服務的命令目錄
|   |-- ab                 # http服務性能測試工具
|   |-- apachectl          # apache啟動命令
|   |-- apr-1-config      
|   |-- apu-1-config
|   |-- apxs               # http服務編譯和安裝擴展模塊使用工具,在DSO方式模塊編譯時用到
|   |-- checkgid
|   |-- dbmmanage
|   |-- envvars
|   |-- envvars-std
|   |-- htcacheclean       # 清理磁碟緩衝區的控制命令
|   |-- htdbm
|   |-- htdigest
|   |-- htpasswd           # 建立和更新基本認證文件
|   |-- httpd              # httpd為apache的控制命令程式
|   |-- httxt2dbm
|   |-- logresolve
|    -- rotatelogs         # apache自帶的日子輪詢命令(cronolog生產環境使用比較多)。


conf配置文件目錄
[root@htdocs]# ls ../conf/
extra  httpd.conf  magic  mime.types  original
/application/apache/conf/         # apache配置所有的配置文件目錄
|-- extra                         # 額外的apache配置文件目錄 如:httpd-vhost.conf
|   |-- httpd-autoindex.conf      
|   |-- httpd-dav.conf
|   |-- httpd-default.conf
|   |-- httpd-info.conf
|   |-- httpd-languages.conf
|   |-- httpd-manual.conf
|   |-- httpd-mpm.conf
|   |-- httpd-multilang-errordoc.conf
|   |-- httpd-ssl.conf
|   |-- httpd-userdir.conf
|   |-- httpd-vhosts.conf
|-- httpd.conf                     # apache主配置文件
|-- magic
|-- mime.types
|-- original
|   |-- extra
|   |   |-- httpd-autoindex.conf
|   |   |-- httpd-dav.conf                 # dav支持配置
|   |   |-- httpd-default.conf             # 這個文件里配置的是apache的相關服務參數:超時時間、保持鏈接
|   |   |-- httpd-info.conf
|   |   |-- httpd-languages.conf           # 語言支持
|   |   |-- httpd-manual.conf
|   |   |-- httpd-mpm.conf # 伺服器池管理,也是優化apache的一個配置文件(apache的模式以及配置鏈接數,常用模式為worker模式和profork模式,預設porfork)
|   |   |-- httpd-multilang-errordoc.conf
|   |   |-- httpd-ssl.conf                 # 提供apache ssl支持配置文件
|   |   |-- httpd-userdir.conf
|   |   |-- httpd-vhosts.conf              # 虛擬機的配置文件
|   |-- httpd.conf


站點存放目錄
[root@apache]# ls -l htdocs/    # 預設的首頁文件都放在此目錄當中。
total 4
-rw-r--r-- 1 root root 44 Nov 21  2004 index.html


日誌存放目錄
[root@es apache]# tree logs
logs                 # apache服務預設的日誌路徑,包括錯誤日誌和訪問日誌
|-- access_log       # apache服務訪問日誌 tail -f命令可以查看網頁用戶訪問的信息
|-- cgisock.16406    
|-- error_log        # apache服務的錯誤日誌。如:apache服務啟動故障
|-- httpd.pid        # httpd的pid文件,http進程啟動後,會把所有進程的id號寫到此文件


模塊目錄
[root@apache]# ls -l manual/     # apache的模塊目錄 如php mencache
total 2984
-rw-r--r-- 1 root root   543 May  6  2008 bind.html
-rw-r--r-- 1 root root 11422 Jan  3  2012 bind.html.de



您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前段時間一個測試環境的mysql資料庫的root密碼找不到了,一個不重要的庫,安裝人員估計疏忽了...手動把密碼恢復了一下。記錄下來做個備註 1、進入my.cnf ,在[mysqld]欄位中添加 skip-grant-tables 2、重啟mysql服務 service mysqld restart ...
  • 在資料庫中,很多人員習慣使用SELECT COUNT(*)、SELECT COUNT(1)、SELECT COUNT(COL)來查詢一個表有多少記錄,對於小表,這種SQL的開銷倒不是很大,但是對於大表,這種查詢表記錄數的做法就是一個非常消耗資源了,而且效率很差。下麵介紹一下SQL Server、 O... ...
  • 問題: 兩張表 數據都非常多 A表中A1欄位 需要關聯B表主鍵 查詢 A1 欄位 存儲多個B表主鍵 格式為: 格式1:b1,b2,b3 格式2:b4 格式3:b5,b6 逗號分隔的占少數 這樣就導致在做關聯查詢時,必須使用 like '%...%', charindex ,又或者replace(A1 ...
  • " 1、視圖理論 " "1.1、視圖的存儲" "1.2、視圖的作用" "1.3、視圖的工作機制" "1.4、視圖的依賴性" "1.5、可更新的連接視圖" "1.6、內聯視圖" " 2、物化視圖 " "2.1、刷新物化視圖" "2.2、物化視圖日誌" "2.3、管理物化視圖" "2.4、物化視圖與索引 ...
  • 在ElasticSearch 2.4版本中,文檔存儲的介質分為記憶體和硬碟:記憶體速度快,但是容量有限;硬碟速度較慢,但是容量很大。同時,ElasticSearch進程自身的運行也需要記憶體空間,必須保證ElasticSearch進程有充足的運行時記憶體。為了使ElasticSearch引擎達到最佳性能,必... ...
  • 最近在學linux,使用ssh遠程登陸linux,記錄下來! 首先進入/etc目錄下,/etc目錄存放的是一些配置文件,比如passwd等配置文件,要想使用ssh遠程登陸,需要配置/etc/ssh/sshd_config文件里的配置信息,使用vim編輯,在命令行模式下輸入 vim /etc/ssh/ ...
  • 在本科期間學習過進程,網上也有很多關於進程的知識,但對於進程到底是什麼一直沒有讓我滿意的解答(以下截圖來自網路,感覺對進程理解有問題,說得也很虛)。 但今天找到這個博文感覺挺符合我的胃口:http://blog.csdn.net/yuqiang_ee_android/article/details/ ...
  • cat [功能說明] 建立文件 #cat命令用來串接文件或顯示文件內容的但是如果從標準輸入設備中讀入數據並將結果重定向到一個新的文件中,則可以到達建立新文件的目的。Cat命令只能在編輯新的文件時只能從鍵盤接收數據,不能靈活的對文件的內容編輯 因此靈活性遠遠不如專門的文本編輯工具,只能用來建立簡單的文 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...