91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Apache服務器的優化方法

發布時間:2021-09-03 09:21:33 來源:億速云 閱讀:147 作者:chen 欄目:系統運維

這篇文章主要講解了“Apache服務器的優化方法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Apache服務器的優化方法”吧!


ExtendedStatus On 因為寫入額外的時間標志,設off。
MPM:worker-多進程多線程新型設計,適合高流量服務,但是不穩定,對象php之類支持非常差,不推薦, prefork-穩定,無線程,占用較多內存。
HostnameLookups off 關掉,這樣少一dns查詢,日志處理可以另外用軟件。
注釋LoadMoule指令中不要的模塊。
一般說來,不需要的模塊包括:

代碼如下:


LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
#LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
#比如:需要在~/username/下調試php可以將
#LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule mem_cache_module modules/mod_mem_cache.so
#cgi程序用到,象awstats之類需要用到
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so


上面只是我總結的部分用不到的,有大俠指點一下還有那些可以不要....
文件夾Directory的選項的優化Options Indexes Includes FollowSymLinks ExecCGI
AllowOverride None
ExecCGI 允許執行 CGI 腳本。如果該選項沒有設置,則 CGI 腳本將不能執行。如果沒有必要最好不要開啟,有可能會有安全性問題.
Includes 允許服務器端包含。服務器端包含允許一個 HTML 文件包含其他文件。這個平時用不到,他要檢查每個html所以不要開啟.
IncludesNOEXEC 允許服務器端包含,但 CGI 腳本中的 #exec 和 #include 指令無效。不常用,關掉
Indexes 如果 DirectoryIndex (如 index.html) 在請求的目錄沒存在的話,按一定方式顯示目錄內容列表.這個用的太多了,開啟吧.
FollowSymLinks 最好關掉符號連接,Apache就必須執行額外的系統調用以驗證符號連接。文件名的每一個組成部分都需要一個額外的調用.當打開這個選項時,Apache 將檢查每個請求中是否包含對符號連接的引用,這將對請求中包含的每個路徑調用一次lstat()系統調用。在請求"/index.html" 時,Apache將對"/www"、"/www/htdocs"、"/www/htdocs/index.html"執行lstat()調用。而且 lstat()的執行結果不被緩存,因此對每一個請求都要執行一次。除非你準備使用符號連接,否則用 Options -FollowSymLinks 來關掉它。 用一個破折號引導,從而禁用此指令。
AllowOverride  這個選項,是開啟如包括htaccess來進行權限控制,Apache必需首先在當前目錄中查找是否存在這個文件,如果存在就解析這個文件并在當前目錄中應用文件中的設置。更壞的是,Apache不僅要查看當前的目錄,還要查看當前目錄的所有上層目錄是否包括htaccess文件以根據所有這些文件最終確定設置。例如請求"/index.html",則Apache會試圖打開"/.htaccess"、"/www/.htaccess"、"/www /htdocs/.htaccess"。其解決方法 AllowOverride None來關掉,當然,這樣做靜態化就只能寫在VH的配置中了,禁用后設置文件僅在服務器啟動時解析一次 。
DirectoryIndex index*,不要使用通配符,全用完整列表,如irectoryIndex index.cgi index.pl index.shtml index.html。當然,最少好些,明確的指定設置文件列表,放在最前最合理。
啟用了持久鏈接Keepalive,這樣子進程將保持忙碌狀態以等待被打開連接上的新請求。如果開啟KeepAliveTimeout的默認值被設置為5秒。最好不要大于60秒。
禁用日志
寫入日志信息是一個很花費時間的工作,盡管Apache保持日志文件的打開狀態以節省打開文件的時間,但仍然得花費不少的時間。如果沒有必要存儲日志信息,你可以關閉這個選項以節省出更多的處理器時間,只需要在設置文件中把日志那一行注釋掉就可以關掉它。當然,實在需要,最要加入另一個單盤來管理日志存儲.

靜態內容方面
如果你的WEB服務器使用了大量靜態內容或者你分別用兩個WEB服務器處理動態和靜態內容,那么你現在的主要目標就是縮短服務器發送被請求內容的響應時間,最簡單的方法就是使用mod_cache緩存模塊。你可以使用mod_disk_cache和mod_mem_cache來分別提供基于磁盤的緩存和基于內存的緩存。
優化動態內容
動態內容可能是所有WEB服務器中最消費時間的部分,特別是使用CGI的時候,一個簡單的程序都可能會把響應時間增加好幾秒。
使用基于腳本的方案的一大好處是它們在Apache里裝入了解釋器,這就減少了執行時再裝入解釋器的時間,一些方案還把解析過的腳本緩存起來,這樣下一次遇到同樣的請求就可以直接執行而無需再次解析。當然也可以應用的服務分離,象使用php的fastcgi來在后面跑,前面給Web服務器.
對特定系統的調整優化很復雜而且很花時間,而且你需要調整特定的腳本以利用優化的成果。
不過對動態內容的優化效果是非常明顯的,僅僅是把perl腳本的執行模式從CGI轉到mod_perl就可以減少多達70%的執行時間,如果我們進一步,還可以使用到數據庫的持久連接或在多次請求之間緩存信息,這對電子商務網站非常有用,它也減小了不同請求間重復裝載信息的開銷。
總的來講,網站的動態內容腳本和CGI是影響網站性能的最重要方面(所以好的程序員很重要),如果你管理一個典型的Apache服務器你會發現Apache響應一個傳入連接以及最后把內容發送給客戶的所花費的時間是以毫秒記的,而等待所需數據資源的時間常常達到幾秒鐘。
其它優化

可以把 Apache(httpd)的優先級改為 -15,這已經接近上限(優先級從最高的 -20 到最低的 19)。可以從命令行使用這兩個實用程序:
* 要想停止現有服務并以優先級 -15 重新啟動它,可以發出命令 nice -15 httpd
* 要想避免停止服務,可以發出命令 renice -15 -p 1996
這里的差異是 renice 需要進程 ID(或 pid)。如上所述,可以使用 top 查明 pid。nice 和 renice 是很靈活的程序
配置mod_expires模塊(這個非常有用的優化哦)
mod_expires可以減少20-30%左右的重復請求,讓重復的用戶對指定的頁面請求結果都CACHE在本地,根本不向服務器發出請求。除開用戶有發送no-cache才會更新,但要注意更新快的文件不要這么做.
mod_expires的安裝配置:

代碼如下:


ExpiresActive On
ExpiresDefault A60
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A60


其實還有一個壓縮,我就不寫了,見我另外的那個文章>
http://www.php-oa.com/2008/08/20/gzipsquid.html 壓縮比率可以高到70%,非常有用的.
另外高速的web服務,就可以把noatime參數加入/etc/fstab文件中
lnux文件系統當文件被訪問,創建,更新的時候會保留紀錄。默認的,當文件讀寫操作的時候,系統會更新last-time-read屬性。因為寫操作是比較耗費資源的操作,減少不必要的i/o可以整體上提高磁盤性能。
在掛接文件系統的時候,加入noatime參數可以禁止inode節點訪問時間的修改。如果文件更新時間對于特定的應用不是很重要的話,比如web服務,就可以把noatime參數加入/etc/fstab文件中
比如:
/dev/sdb1 /mountlocation ext3 defaults,noatime 1 2
推薦利用單獨的分區作為掛接點并打開noatime開關
也可以關掉的服務(這個好象誰都明白),apmd,autofs,cups,hpoj.isdn,pcmcia,rhnsd,sendmail,xfs(字體服務)
打開重用TCP/IP中的time-wait套接
sysctl -w net.ipv4.tcp_tw_reuse=1
啟動TIME-WAIT 套接字狀態的快速循環功能
sysctl =w net.ipv4.tcp_tw_recycle=1

這個一些個人的總結,加上一些前輩的經驗, 下面的優化總的來講,在我使用的一年多中,還是相當有用的,優化和不優化還是比較明顯的.
下面開始正題

ExtendedStatus On 因為寫入額外的時間標志,設off。
MPM:worker-多進程多線程新型設計,適合高流量服務,但是不穩定,對象php之類支持非常差,不推薦, prefork-穩定,無線程,占用較多內存。
HostnameLookups off 關掉,這樣少一dns查詢,日志處理可以另外用軟件。

注釋LoadMoule指令中不要的模塊。
一般說來,不需要的模塊包括:
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
#LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
#比如:需要在~/username/下調試php可以將
#LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule mem_cache_module modules/mod_mem_cache.so
#cgi程序用到,象awstats之類需要用到
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so
上面只是我總結的部分用不到的,有大俠指點一下還有那些可以不要….
文件夾Directory的選項的優化
Options Indexes Includes FollowSymLinks ExecCGI
AllowOverride None
ExecCGI 允許執行 CGI 腳本。如果該選項沒有設置,則 CGI 腳本將不能執行。如果沒有必要最好不要開啟,有可能會有安全性問題.
Includes 允許服務器端包含。服務器端包含允許一個 HTML 文件包含其他文件。這個平時用不到,他要檢查每個html所以不要開啟.
IncludesNOEXEC 允許服務器端包含,但 CGI 腳本中的 #exec 和 #include 指令無效。不常用,關掉
Indexes 如果 DirectoryIndex (如 index.html) 在請求的目錄沒存在的話,按一定方式顯示目錄內容列表.這個用的太多了,開啟吧.
FollowSymLinks 最好關掉符號連接,Apache就必須執行額外的系統調用以驗證符號連接。文件名的每一個組成部分都需要一個額外的調用.當打開這個選項時,Apache將檢查每個請求中是否包含對符號連接的引用,這將對請求中包含的每個路徑調用一次lstat()系統調用。在請求"/index.html"時,Apache將對"/www"、"/www/htdocs"、"/www/htdocs/index.html"執行lstat()調用。而且lstat()的執行結果不被緩存,因此對每一個請求都要執行一次。除非你準備使用符號連接,否則用 Options -FollowSymLinks 來關掉它。 用一個破折號引導,從而禁用此指令。
AllowOverride  這個選項,是開啟如包括htaccess來進行權限控制,Apache必需首先在當前目錄中查找是否存在這個文件,如果存在就解析這個文件并在當前目錄中應用文件中的設置。更壞的是,Apache不僅要查看當前的目錄,還要查看當前目錄的所有上層目錄是否包括htaccess文件以根據所有這些文件最終確定設置。例如請求"/index.html",則Apache會試圖打開"/.htaccess"、"/www/.htaccess"、"/www/htdocs/.htaccess"。其解決方法 AllowOverride None來關掉,當然,這樣做靜態化就只能寫在VH的配置中了,禁用后設置文件僅在服務器啟動時解析一次 。

DirectoryIndex index*,不要使用通配符,全用完整列表,如:DirectoryIndex index.cgi index.pl index.shtml index.html。當然,最少好些,明確的指定設置文件列表,放在最前最合理。

啟用了持久鏈接Keepalive,這樣子進程將保持忙碌狀態以等待被打開連接上的新請求。如果開啟KeepAliveTimeout的默認值被設置為5秒。最好不要大于60秒。

禁用日志
寫入日志信息是一個很花費時間的工作,盡管Apache保持日志文件的打開狀態以節省打開文件的時間,但仍然得花費不少的時間。如果沒有必要存儲日志信息,你可以關閉這個選項以節省出更多的處理器時間,只需要在設置文件中把日志那一行注釋掉就可以關掉它。當然,實在需要,最要加入另一個單盤來管理日志存儲.


靜態內容方面
如果你的WEB服務器使用了大量靜態內容或者你分別用兩個WEB服務器處理動態和靜態內容,那么你現在的主要目標就是縮短服務器發送被請求內容的響應時間,最簡單的方法就是使用mod_cache緩存模塊。你可以使用mod_disk_cache和mod_mem_cache來分別提供基于磁盤的緩存和基于內存的緩存。

優化動態內容
動態內容可能是所有WEB服務器中最消費時間的部分,特別是使用CGI的時候,一個簡單的程序都可能會把響應時間增加好幾秒。
使用基于腳本的方案的一大好處是它們在Apache里裝入了解釋器,這就減少了執行時再裝入解釋器的時間,一些方案還把解析過的腳本緩存起來,這樣下一次遇到同樣的請求就可以直接執行而無需再次解析。當然也可以應用的服務分離,象使用php的fastcgi來在后面跑,前面給Web服務器.

對特定系統的調整優化很復雜而且很花時間,而且你需要調整特定的腳本以利用優化的成果。

不過對動態內容的優化效果是非常明顯的,僅僅是把perl腳本的執行模式從CGI轉到mod_perl就可以減少多達70%的執行時間,如果我們進一步,還可以使用到數據庫的持久連接或在多次請求之間緩存信息,這對電子商務網站非常有用,它也減小了不同請求間重復裝載信息的開銷。

總的來講,網站的動態內容腳本和CGI是影響網站性能的最重要方面(所以好的程序員很重要),如果你管理一個典型的Apache服務器你會發現Apache響應一個傳入連接以及最后把內容發送給客戶的所花費的時間是以毫秒記的,而等待所需數據資源的時間常常達到幾秒鐘。
其它優化

配置mod_expires模塊(這個非常有用的優化哦)

mod_expires可以減少20-30%左右的重復請求,讓重復的用戶對指定的頁面請求結果都CACHE在本地,根本不向服務器發出請求。除開用戶有發送no-cache才會更新,但要注意更新快的文件不要這么做.

mod_expires的安裝配置:
ExpiresActive On
ExpiresDefault A60
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A60
其實還有一個壓縮,我就不寫了,見我另外的那個文章<<Gzip在apache2中的設置和squid對它的處理>>
http://www.php-oa.com/2008/08/20/gzipsquid.html 壓縮比率可以高到70%,非常有用的.
另外高速的web服務,就可以把noatime參數加入/etc/fstab文件中
lnux文件系統當文件被訪問,創建,更新的時候會保留紀錄。默認的,當文件讀寫操作的時候,系統會更新last-time-read屬性。因為寫操作是比較耗費資源的操作,減少不必要的i/o可以整體上提高磁盤性能。
在掛接文件系統的時候,加入noatime參數可以禁止inode節點訪問時間的修改。如果文件更新時間對于特定的應用不是很重要的話,比如web服務,就可以把noatime參數加入/etc/fstab文件中
比如:
/dev/sdb1 /mountlocation ext3 defaults,noatime 1 2
推薦利用單獨的分區作為掛接點并打開noatime開關
也可以關掉的服務(這個好象誰都明白),apmd,autofs,cups,hpoj.isdn,pcmcia,rhnsd,sendmail,xfs(字體服務)
打開重用TCP/IP中的time-wait套接
sysctl -w net.ipv4.tcp_tw_reuse=1
啟動TIME-WAIT 套接字狀態的快速循環功能
sysctl =w net.ipv4.tcp_tw_recycle=1

感謝各位的閱讀,以上就是“Apache服務器的優化方法”的內容了,經過本文的學習后,相信大家對Apache服務器的優化方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宾阳县| 农安县| 仲巴县| 白河县| 明光市| 辽宁省| 斗六市| 洛浦县| 磐安县| 大理市| 武城县| 塘沽区| 湘乡市| 朝阳市| 宝兴县| 怀柔区| 惠安县| 武城县| 福贡县| 榆中县| 乌拉特前旗| 工布江达县| 满城县| 伊金霍洛旗| 隆德县| 玉屏| 东乡族自治县| 根河市| 南宫市| 千阳县| 潮安县| 泰宁县| 托里县| 许昌市| 屯留县| 白山市| 达孜县| 浮山县| 华阴市| 寿宁县| 甘肃省|