當前位置:首頁 » 編程語言 » phptsnts

phptsnts

發布時間: 2022-09-08 07:34:22

1. php5 NTS和TS版本的區別,所謂的線程安全和非安全

先從字面意思上理解:

  1. None-Thread Safe就是非線程安全,在執行時不進行線程(thread)安全檢查;

  2. Thread Safe就是線程安全,執行時會進行線程(thread)安全檢查,以防止有新要求就啟動新線程的 CGI 執行方式耗盡系統資源。


再來看PHP的兩種執行方式:

ISAPI和FastCGI。

  1. FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執行效率,所以,如果是以 FastCGI(無論搭配 IIS 6 或 IIS 7)執行 PHP ,都建議下載、執行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)。

  2. 而線程安全檢查正是為ISAPI方式的PHP准備的,因為有許多php模塊都不是線程安全的,所以需要使用Thread Safe的PHP。

2. PHP 的 require函數

require()是php的內置函數,作用是引入或者包含外部php文件。

工作原理:當本身php文件被執行時,則外部文件的內容就將被包含進該自身php文件中;當包含的外部文件發生錯誤時,系統將拋出錯誤提示,並且停止php文件的執行。

注意:使用require時,一個文件存在錯誤的話,那麼程序就會中斷執行了,並顯示致命錯誤。

比如cl.php,ts.php兩個文件,ts.php要用到cl.php文件中的函數,需要在ts.php中引入或者包含cl.php即可.示例如下:

cl.php

<?php
functionshow(){
echo"cl.php文件中的show方法被調用了!";

}
?>

ts.php

<?php
require'cl.php';
show();
?>

運行結果:

3. PHP的運行環境

再裝Apache啊! 要資料庫的話就用MYsql資料庫

一.php的安裝與調試
由於php是一個zip文件(非install版),安裝較為簡單,解壓就行。把解壓的 php5.2.1-Win32重命名為 php5。並復制到C盤目錄下。即安裝路徑為 c:\php5
1 找到php目錄下的 php.ini-dist或 php.ini.recommended文件,重命名為 php.ini
並復制到系統盤的windows目錄下(以c:\windows為例).
2 再把php目錄下的php5ts.dll,libmysql.dll復制到目錄 c:\windows\system32下。
3 把php5\ext目錄下的php_gd2.dll,php_mysql.dll,php_mbstring.dll文件復制到c:\windows\system32下
如果沒有載入 php_gd2.dll php將不能處理圖像。沒有載入php_mysql.dll php將不支持mysql函數庫
php_mbstring.dll在後面使用phpmyadmin時支持寬字元。
4 打開c:\windows\php.ini文件(關聯到mysql)
設置擴展路徑
查找 extension_dir 有這么一行extension_dir = "./"
將此行改成
extension_dir = "C:\php5\ext"
其中C:\php5是你安裝php的路徑。路徑不正確將無法載入dll
(注意:有些php版本是 ;extension_dir = "./" 要把前面的分號去掉)
查找 extension
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_mysql.dl
把上面3項前面的分號去掉,這樣apache啟動時就可以載入這些dll了
當然前面我們也把這些dll復制到system32下了l
php5時差問題
<?php echo date("Y-m-d H:i:s");?>時間相差八小時
為什麼呢?PHP5系列版本新增了時區設置,默認為格林威治時間,與中國所在的東8區正好相差8個小時
查找date.timezone有這么一行
;date.timezone =
將;去掉,改成
date.timezone = PRC
二.apache的調試和整合
1.修改網站根目錄
查找 DocumentRoot有這么一行
DocumentRoot"C:/Program Files/Apache Group/Apache2/htdocs"
這就是你網站的根目錄,你可以修改,也可以用默認的.如果改,還要修改下面這項,否則可能會出現 403 錯誤
查找 This should be changed to whatever you set DocumentRoot to
在它下面兩行有
<Directory "C:/Program Files/Apache Group/Apache2/htdocs">
把上面兩項的 C:/Program Files/Apache Group/Apache2/htdocs 改成你想要的目錄
2.讓apache支持*.php(網頁)
查找 DirectoryIndex index.html index.html.var
修改成
DirectoryIndex index.html index.html.var index.php
這樣index.php 可以充當默認頁面了
3.Apache中模塊化安裝php
查找 # LoadMole foo_mole moles/mod_foo.so
在此行後加入一行
LoadMole php5_mole C:/php5/php5apache2.dll //注意:其中C:/php5/php5apache2.dll是你安裝php的相應路徑.不要把php5apache2.dll和php5apache.dll混淆.php5apache.dll只適用於apache 版本1的.PHP5壓縮包里的php5apache2.dll只適用於apache2.0.*版本,如果是2.2.*以上版本,就可能會出現"Cannot load C:/php/php5apache2.dll into server: The specified mole could not be found."或者:"The requested operation has failed"
4.查找 AddType application/x-gzip .gz .tgz
在此行後加入一行
AddType application/x-httpd-php .php (記住:前邊有一個空格哦!!!)
這樣apache就可以解釋php文件了
5.測試
在網站根目錄下創建一個 phpinfo.php 文件

<?php
phpinfo();
?>

在瀏覽器打開
http://localhost/phpinfo.php
5.測試php和mysql資料庫的關聯
在網站根目錄下創建一個test.php 文件

<?php
$link=mysql_connect("localhost","root","12345"); //12345改成你的mysql密碼
if(!$link) echo "失敗!";
else echo "成功!";
mysql_close();
?>

在瀏覽器打開 http://localhost/test.php
如果輸出成功,則說明大功告成了

4. 如何判斷PHP 是ts還是nts版的

通過phpinfo(); 查看其中的 Thread Safety 項,這個項目就是查看是否是線程安全,

如果是:enabled,一般來說應該是ts版,否則是nts版。

5. 如何配置php伺服器

1. 安裝IIS
IIS是windows平台下比較成熟的web服務,安裝方法也非常簡單。
打開「開始」菜單,點擊「管理您的伺服器」,點擊「添加或刪除角色」(如圖所示)。

2
進入預備步驟後直接點下一步。到達了選擇角色的地方,選擇「應用程序服務(IIS,ASP.net)」

3
之後點擊下一步,出現附加組件的選擇,一個是FrontPage Server Extentions,另外一個是ASP.net,這兩項我們的環境中都不需要,不必選擇,如果有需要,可以選擇性安裝。進入下一步,是選項總結,再下一步,進入安裝過程,此時提示需要插入windows 2003(R2)的安裝光碟,插入光碟後,選擇光碟機所在驅動器下的I386,點擊確定,安裝過程將會繼續一直到結束,並且出現成功提示
4
完成後對IIS進行測試,打開「開始」菜單,點擊「所有程序」,進入「管理工具」,點擊「internet信息服務(IIS)管理器」
展開「網站」樹型節點,刪除默認網站,然後新建一個網站

5
進入向導後,進入下一步,為網站添加描述,也就是IIS中顯示的網站標示,可以隨便填寫,再進入下一步,為網站配置主機頭,我們是用來配置本地測試環境,所以把主機頭配置為127.0.0.1
6
進入下一步,選擇目錄,目錄需要提前建立好,然後選擇即可。繼續下一步,需要選擇網站許可權,這里只選擇讀取即可。之後便可完成網站新建向導了。
需要正常的瀏覽網站,還需要給網站的根目錄文件夾指定相應的許可權,首先在網站屬性中查看網站的匿名訪問賬戶是什麼,然後將這個賬戶設置到網站的根目錄文件夾,並設置相應的訪問許可權

7
網站的匿名訪問賬戶是:IUSR_CBLH-DDEF00B671,為文件夾設置用戶訪問許可權
8
許可權配置好後,在目錄中新建一個index.html文件,隨意輸入一些文字或者html代碼即可。
在網站名稱上右鍵,點擊屬性,進入「屬性」後點擊「文檔」選項卡,在此添加一個index.html和index.php(index.php添加好是為了待會不必再做配置),然後點擊「確定」或者「應用」保存配置。
然後在瀏覽器中的地址欄中輸入「http://localhost/」或者「http://127.0.0.1/」,即可看到剛才我們建立的index.html中的內容。
9
安裝fastcgi
IIS調試好後,就可以安裝fastcgi了,首先需要下載IISfastcgi,下載地址是(http://www.iis.net/download/FastCGI),安裝fastcgi非常簡單,只需要同意協議後連續點擊下一步即可,沒有任何選項。

10
安裝php
首先下載php在windows的安裝包,下載地址http://windows.php.net/downloads/releases/archives/,這里選用php-5.3.4-nts-Win32-VC9-x86.msi做例子。下載好php-5.3.4-nts-Win32-VC9-x86.msi後,雙擊文件安裝,接受使用協議後,為php填寫安裝目錄,這個目錄是可以更換的,指向需要放置它的位置即可。之後需要選擇web伺服器的安裝,這里選擇我們先前安裝的IIS fastcgi

11
下一步需要配置安裝選項,這里我們除了默認的選項之外增加了pear install(如圖所示)

12
再進入下一步,就可以確認安裝了。
完成安裝後,還需要測試一下php是否可用。
首先打開IIS管理器,然後在先前測試IIS的網站上右鍵,進入「屬性」,點擊主目錄選項卡,然後將「執行許可權」配置為「純腳本
13
然後點擊旁邊的「配置」,查看是否有.php擴展名,如果沒有的話,需要添加一個新項,將可執行文件指向「C:WINDOWSsystem32inetsrvfcgiext.dll」,擴展名為「.php」(注意有個點),動作限制為「GET,HEAD,POST,TRACE」,點擊確定即可
步驟閱讀
14
做好了這些,就可以寫個小腳本來測試了,在網站的目錄中新建一個test.php文件,打開後輸入,保存後退出。在瀏覽器地址欄中輸入http://localhost/test.php,即可看到php信息了。
4. 安裝isapi_urlwriter ISAPI擴展組件
isapi_urlwriter ISAPI擴展組件主要用來做地址重寫,重寫後的虛擬靜態地址對搜索引擎更友好。先將ISAPI_Rewrite3安裝包解壓到指定的文件目錄中,然後進入網站屬性窗口,選擇窗口中的ISAPI篩選器選項卡,點擊添加按鈕,在彈出的窗口中選擇ISAPI_Rewrite3解壓目錄中的ISAPI_Rewrite.dll文件為可執行文件並確定。

END
iis7.5 PHP環境配置
1
windows server 2008是基於NT6 平台的新型操作系統,其對硬體性能的發揮比起其它NT平台來說有了質的飛躍,已經開始普及到了廣大用戶中,而且操作較2003來說更為直觀和簡單,受到越來越多的好評。在這里我們要介紹windows server 2008中的php環境搭建。
安裝IIS
windows server 2008的IIS版本為7.0,包括fastcgi,安裝十分方便。
打開「開始」菜單→「伺服器管理」,出現伺服器管理界面

2
在圖中黃色框中填入伺服器ip,點擊打開,之後提示輸入用戶名和密碼,驗證成功後完成登錄伺服器。
3
點擊「下一步」之後,需要選擇功能,這里需要比默認選項多增加一個「cgi」

4
點擊「下一步」,將會需要確認一下安裝的內容,此時點擊安裝,即可將IIS安裝在操作系統中。
安裝好IIS之後,需要進行一個測試,在瀏覽器地址欄中輸入「http://localhost/」,如果出現IIS7的歡迎頁則說明正常。接下來需要配置一個新網站,首先打開IIS管理器(「開始」→「所有程序」→「管理工具」→「internet 信息服務(IIS)管理器」)。
然後刪除默認網站,在主菜單中,展開網站菜單,然後再網站名稱上右鍵,點擊刪除即可
5
再新建一個網站,在「網站」上右擊,點擊添加網站,會出現信息網站添加的表單,首先輸入網站名稱,例如「stourwebcms」,路徑選擇為網站存放的路徑,單IP的伺服器可以不必選擇IP,主機頭填寫為localhost,然後點擊確定。
6
添加好網站後,需要為網站設置用戶訪問許可權。在iis管理器左邊的網站列表中選中網站,在右邊的操作列表中點擊「基本設置」,在彈出窗口中點擊「連接為」,彈出的窗口中會出現網站的默認用戶賬戶,也可以更改為其它的用戶。確定網站的用戶賬戶後,將此賬戶的訪問許可權設置到網站的根目錄文件夾上

打開網站目錄,新建一個index.html,然後用記事本打開,輸入「hello stourweb」後保存,並訪問本地地址「http://127.0.0.1」進行測試,網頁上顯示出了「hello stourweb」,說明配置成功。

7
安裝php
在前面已經提過,IIS7中不必單獨安裝fastcgi,所以,我們只需要下載php安裝包進行安裝即可,下載地址:http://windows.php.net/downloads/releases/archives/ 下載好後,打開安裝程序,經過引導,配置好路徑,來到選擇「web server setup」的地方,在這里我們選擇「IIS fastcgi」
8
然後點擊「next」按鈕,到了選擇安裝選項的步驟,一般安裝默認的就可以了,如果要添加的話需要點擊一下前面的磁碟小圖標,然後選擇安裝,第一項是只安裝選中的項目,第二項是安裝所有該項目的子項目。配置好後進入下一步

9
配置好後,點擊「next」然後點擊「install」即可安裝php。
當php安裝完成後會自動在iis的處理程序映射中增加一條fastcgi到php的映射關系

安裝完成後,我們還是需要測試一下,打開剛才新建的網站目錄,新建一個test.php文件,用記事本打開,輸入
<?php
echo phpinfo();
?>
保存退出,再從瀏覽器中訪問http://127.0.0.1/test.php
顯示出php信息,說明php環境安裝成功。
10
安裝isapi_urlwriter ISAPI擴展組件
isapi_urlwriter ISAPI擴展組件主要用來做地址重寫,重寫後的虛擬靜態地址對搜索引擎更友好。先將ISAPI_Rewrite3安裝包解壓到指定的文件目錄中,然後雙擊iis的ISAPI篩選器配置項,進入網站ISAPI組件配置窗口,點擊添加按鈕,在彈出的窗口中選擇ISAPI_Rewrite3解壓目錄中的ISAPI_Rewrite.dll文件為可執行文件並確定。

11
ISAPI_Rewrite3組件是一個32位的程序,因此在64位操作系統應用池進程下默認不工作,因此需要在網站所屬應用進程池的高級設置中將進程池設置為32位兼容

END
Mysql資料庫安裝
1
下載mysql(http://www.mysql.com),安裝過程比較簡單,首先配置路徑,然後選擇安裝選項,一般採用默認安裝的方式,之後會進入一個配置向導界面
步驟閱讀
2
連續下一步,需要選擇配置方式,這里選擇配置方式,我們需要手動配置,所以選擇detailed configuration,然後點擊「下一步」

3
這里需要選擇伺服器類型,如果是開發用的測試環境,選擇developer Machine ,如果是伺服器用,則選擇Server Machine,當然單一用途的伺服器還可以選擇dedicated mysql server machine。選擇好後進入下一步

4
接下來是選擇伺服器使用,第一個是多功能資料庫,可以使用 InnoDB engine和MyISAM engine。第二個選項,它的性能偏向於InnoDB,但是同時支持MyISAM engine。第三個選項是偏向於分析功能的MyISAM。至於這三個選項有什麼區別,其實只要知道,MyISAM類型的資料庫引擎可以為php提供強大的檢索和分析功能。InnoDB的性能則偏重於存儲
所以如果只做web伺服器的話選擇第三項即可,如果是有其它用途,建議選擇第一項。
5
下一步需要選擇伺服器上的連接數量,這里如果是測試用的小伺服器可以選擇最少的第一項,如果是流量巨大的網站,需要選擇第二項,或者第三項自行填寫。

之後是網路連接的選項,「enable TCP/IP Networking」可以按照需求來選擇,如果不做集群的話可以把勾去掉,如果是在內網環境,不為mysql做路由規則是完全可以打開此項的。可以直接添加一個防火牆例外給3306埠。埠號可以選擇,但是推薦默認的3306。還有一項是是否開啟嚴謹模式,此項推薦勾選

6
點擊下一步,選擇默認字元集,這里選擇自定義的utf8字元集

7
進入下一步,需要設定windows選項,這里推薦安裝windows服務,並且自動啟動。第二個選項,如果有必要,可以選擇添加一個環境變數,可以方便命令行指向。

配置好後,進入下一步,需要為root用戶設定密碼,請設置一個比較復雜的密碼以增加安全性,另外請牢記自己設置的密碼,否則遺忘了後需要重置密碼十分麻煩。還有一個是否允許root用戶從遠程登錄的選項,此處最好不勾選,否則安全性將會降低。
到此配置就全部結束了,點擊下一步,會出現安裝總結,點擊「execute」執行安裝即可。
安裝成功後,我們依然需要對此進行測試。
在網站中新建一個測試php文件test.php,我們使用pdo鏈接mysql作為測試。
輸入
<?php
$db=new PDO("mysql:host=localhost;dbname=test","root","剛才設置的密碼");
if ($db)
{
echo "ok";
}
?>
訪問http://localhost/test.php,如果屏幕上列印出了ok,表示mysql安裝成功。
END
安全配置建議
1
安全軟體
一款好的安全軟體能有效防禦來自計算機病毒、惡意軟體和木馬的威脅,但能用於伺服器的安全軟體並不多,其中大部分都是收費的,平常個人所用的金山毒霸和360等不能安裝到windows server系列的伺服器操作系統上,但他們都有相應的伺服器版本並且提供免費升級,在他們的官網上面都能夠找到。
2
防火牆
合理的配置好防火牆能有效的阻止各種惡意入侵,因為各種網路入侵都是通過相應的網路埠完成的。網路埠是伺服器上的各種網路服務開啟的,他們對外提供各種網路服務,如http、ftp、smtp等。自己的伺服器上需要提供哪些網路服務就只開啟這些服務的相應埠,如伺服器上提供網站服務,就需要開啟http的80埠,如需要提供ftp服務就要開啟21埠;有些網路服務不需要對外提供服務就不應該開啟,如sql server資料庫不需要對外提供服務,就應該在防火牆中關閉掉1433埠。
Windows sever 2003和2008都自帶防火牆,其實能簡單有效的利用這些自帶的防火牆就能有效的完成埠的開閉管理。
l Windows server 2003伺服器防火牆配置
1) 滑鼠右鍵單擊「網上鄰居」,選擇「屬性」。
2) 然後滑鼠右鍵單擊「本地連接」,選擇「屬性」。如圖選擇「高級」選項,選中「Internet連接防火牆」,確定後防火牆即起了作用。
點擊「設置(G)...」按鈕可進行高級設置。其中列出了可用的網路服務,選中後允許其打開網路埠並通信,反之則關閉其網路通信;單擊「添加」則可以增加網路服務或打開指定的網路埠

3
Windows server 2008伺服器防火牆配置
1) 在控制面板中打開網路和共享中心
2) 點擊「windows防火牆」彈出防火牆配置窗口,在此窗口中要確認防火牆服務已經開啟
3) 單擊「允許程序或功能通過Windows防火牆」彈出網路服務埠配置窗口,在此窗口中可以選擇允許打開埠並通信的網路服務,單擊「允許運行另一程序」來自定義開啟某一網路服務或埠
4
用戶管理
系統中用戶的數量能越少越好,並且每個用戶都被用於特定的功能,如可以新建一個專門用於對網站進行匿名授權的賬戶(如條件允許,可以為每個網站新建一個獨立的賬戶進行分別授權,這些能夠隔離開各網站的授權,提高各網站的安全性,不至於一個網站被入侵後能夠有許可權訪問到其它網站的文件目錄)。另外最重要的一點是要為每個賬戶設置一個獨立且復雜的密碼,防止賬戶密碼被猜解和窮舉。
5
文件系統許可權管理
l C盤只給administrators 和system許可權,其他的許可權不給,其他的盤也可以這樣設置,這里給的system許可權也不一定需要給,只是由於某些第三方應用程序是以服務形式啟動的,需要加上這個用戶,否則造成啟動不了。

l Windows目錄要加上給users的默認許可權,否則ASP和ASPX等應用程序就無法運行。其實沒有必要單獨設置Instsrv和temp等目錄許可權。

l 另外在c:/Documents and Settings/這里相當重要,後面的目錄里的許可權根本不會繼承從前的設置,如果僅僅只是設置了C盤給administrators許可權,而在All Users/Application Data目錄下會 出現everyone用戶有完全控制許可權,這樣入侵這可以跳轉到這個目錄,寫入腳本或只文件,再結合其他漏洞來提升許可權;
譬如利用serv-u的本地溢出提升許可權,或系統遺漏有補丁,資料庫的弱點,甚至社會工程學等等N多方法,在用做web/ftp伺服器的系統里,建議是將這些目錄都設置的鎖死。其他每個盤的目錄都按照這樣設置,每個盤都只給adinistrators許可權。
另外,還將:
net.exe
cmd.exe
tftp.exe
netstat.exe
regedit.exe
at.exe
attrib.exe
cacls.exe
format.exe
這些文件都設置只允許administrators訪問。
l 網站的目錄最好獨立到一個磁碟中,新建一個為網站匿名訪問而獨立授權的賬戶,讓此賬戶可以訪問和編輯此目錄,移除其它不必要的賬戶對此目錄的訪問許可權,能有效防止網站被入侵後從而涉及到整個系統被控制

日常維護建議
1
定期運行安全軟體進行快速掃描
定期運行一下安全軟體,可以看到安全軟體的引擎或病毒庫是否已經更新到了最新版本,如果沒有可以即時查找原因,看是否是安全軟體未運行、升級埠被禁用或其它原因,雖然安全軟體可以在後台即時掃描各種文件操作,以防止病毒入侵,但有些惡意軟體、流氓軟體或插件則不是實時防護的,雖然這些軟體不會造成伺服器宕機,但也會影響伺服器性能。
2
定期檢查防火牆埠配置
隨著伺服器上的網路服務越來越多,需要打開的網路埠也越來越多,但有些埠是不需要開放的,例如你安裝了一個資料庫軟體(mysql、oracle等),這些資料庫服務很可能只需要在你伺服器的內部訪問,就完全沒有必要讓其通過防火牆,這樣能夠提高伺服器的安全,伺服器對外提供的埠越少越好;
雖然在安裝網路服務的過程中,防火牆會提示你有網路埠正在打開,是否允許通過防火牆,但有些管理員沒有細心看提示,直接就同意了,造成了大量沒有必要打開的網路埠被打開了,特別是一些木馬或惡意軟體會混水摸魚,偽裝提示信息來誘騙管理員打開網路埠,造成大量的安全隱患。進入防火牆配置界面,選擇相應的埠或網路服務,點擊「詳細信息」則可以看到此項應用的詳細信息,根據這些信息來判斷其是否應該開啟這個埠。
3
任務管理器中觀察有無可疑進程,了解系統資源使用情況
任務管理器可以簡單並快速的了解服務系統資源的使用情況,並即時查看系統運行的進程和他們佔用的系統資源,根據伺服器上已開啟的各種應用的服務來判斷哪些進程是非法的,哪些進程佔用的系統資源過多。了解到這些信息後就可以即時的對伺服器進行調整,特別是佔用資源過多的進程進行分析,看是否有什麼異常並即時進行調整。
l 觀察系統進程,並自定義進程屬性
4
查看網路使用情況
查看系統資源使用情況
檢查IIS,了解網站安裝情況
隨時了解伺服器上網站的安裝狀況,並做以下檢查:
1、看各個網站定義的主機頭是否異常
2、 綁定的域名是否完整
3、 主目錄設置是正確
4、用戶許可權設置是否合理
5、 查看IIS的應用程序池設置是否合理,每個池下面託管的網站是否過多,是否需要設置新的應用池,是否有多餘的應用池可以刪除。
查看系統日誌,仔細檢查錯誤、警告日誌發生的原因,並急時修復相應的問題。
檢查系統用戶,查看有無多餘,可疑用戶賬戶,查看每個賬戶所屬的用戶組,特別是administrators組下面的用戶。伺服器被入侵時會出現一些欺騙性的賬戶並被加入到administrators組中,特別留心新建的多餘賬戶,弄清這些賬戶的用途,如果發現是入侵者建立的賬戶,要即時查找賬戶是被創建的原因,並修復相應的漏洞。
檢查文件系統,確保磁碟被合理分區,各個分區應該有各自的功能,如系統、資料庫、網站、備份等。各個分區的用戶授權是不相同的,如系統、備份等不需要網站的專門授權賬戶訪問,資料庫分區需要對資料庫賬戶進行單獨的授權等。既然規劃好了文件分區和功能,並進行了相應的授權,就要防止文件被亂放,以免造成安全隱患。
還要經常檢查各種新建的文件夾和文件(特別是來歷不明,名稱畸形的隱藏文件夾和文件)這些都有可能是入侵者留下的入侵痕跡。
清除垃圾文件,隨時系統運行時間的增加,會產生很多的臨時文件和日誌文件,佔用寶貴的磁碟資源,如果磁碟的可用空間過小(特別是系統盤)還會影響伺服器性能。
1、臨時文件(安裝程序、系統升級、應用程序等產生的)產生的,主要在系統盤,可以看哪些文件夾的體積異常大,可分析其內部文件,確認是臨時文件後將其刪除
2、 日誌文件,主要是IIS產生的,這些日誌文件對於查看網站運行狀態、訪問歷史很有用,但日誌有時效性,如果超過其三個月就沒有什麼用處了,但它會佔用大量的磁碟空間,所以需要定期將其刪除。
定期檢查磁碟狀態並進行碎片整理,隨著系統運行時間的增長,特別是大量的IO操作後,磁碟上會產生大量的文件碎片,這些碎片過多則會嚴重影響伺服器性能,所以定期(建議一個月)進行磁碟碎片檢查,如果系統提醒需要進行碎片整理,則進行整理。
及時升級操作系統補丁,操作系統有各種大量的補丁,特別是一些重要的安全補丁需要即時升級,這樣會有效防止黑客和病毒入侵。
及時備份重要的文件、應用、資料庫。備份分為本地備份和異地備份,有條件的可以進行異地備份,備份是為了以防萬一,當數據丟失或應用損壞時,備份就是救命稻草,因此合理的備份計劃是非常有必要的。
不要隨意下載安裝來歷不明的軟體,特別是需要連接網路或需要打開埠的。現在網上許多的程序都內置有木馬或惡意程序,所以不要下載和安裝網上的不明軟體,特別是一些小網站的。
END

6. 如何判斷PHP 是ts還是nts版的

通過phpinfo(); 查看其中的 Thread Safety 項,

這個項目就是查看是否是線程安全,

如果是:enabled,一般來說應該是ts版,否則是nts版。

如果我的回答沒能幫助您,請繼續追問。

您也可以向我們團隊發出請求,會有更專業的人來為您解答。

7. 怎麼搭建php伺服器

在windows下安裝apache php mysql。

從各官方網站下了APACHE2.050、PHP5、MYSQL4.0.20、PHPMYADMIN2.57。

apache_2.0.50-win32-x86-no_ssl.msi。

php-5.0.0-Win32.zip。

較好的可移植性、可靠性以及較高的運行效率使 PHP 語言在當下行業網站建設中獨占鰲頭。利用 PHP 語言進行行業網站設計,能夠實現資料庫的實時性更新,網站的日常維護和管理簡單易行,進而提高用戶的使用效率。

(7)phptsnts擴展閱讀:

PHP加密

加密總是與安全密不可分,而每個PHPer都必須將應用安全作為必要的設計思路融入代碼中,以下是一些最佳實踐的建議。

不要再使用MD5,不要使用sha1,基本上已經沒有破解難度了。請使用 password_hash來哈希密碼,由於 password_hash函數已幫你處理好了加鹽。

而且作為鹽的隨機字串已通過加密演算法成為了哈希的一部分password_verify()函數會自動將鹽從哈希中提取出來,所以你無需考慮鹽的存儲問題。通信介面的簽名,請使用非對稱演算法對簽名秘鑰進行加密, 並對秘鑰設置有效期,定期更換。

8. Zend後的PHP是如何執行的

那個是已經加密、混雜變數名後的PHP的OpCode碼
執行過程就是解密,然後用Zend
VM運行解密後的OpCode
並不是像1L所說的是二進制代碼。
針對最近Zend公司對加密模式調整補充一些東西:
如果要讓Zend加密的代碼在PHP
5.3.x上運行,必須選擇針對PHP
5.3加密,舊版本的加密文件不能在PHP
5.3上運行。
同時,如果是Windows平台還必須選擇PHP的NTS版本。
對應的Zend解密插件是Zend
Loader。需要全部手工安裝。
獲取ZendLoader.dll之後修改PHP文件增加以下兩行:
zend_extension="(ZendLoader.dll的路徑)"
zend_loader.enable=1
而如果要讓Zend加密的代碼在PHP
5.3之前的平台上運行,必須選擇針對舊版PHP加密。針對PHP
5.3加密的代碼是不能在PHP
5.3之前的平台上運行的。同時,如果是Windows平台還必須選擇PHP的TS版本。
對應的Zend解密插件是Zend
Optimizer。有安裝程序,需要自行安裝。

9. 如何搭建PHP伺服器

這個需要根據你伺服器環境來說,如果是windows 就去下載WAMP 如果是Luni 就去下載LNMP就可以了都有封裝包,但是基本上的搭建方式都大同小異,下面就以windows的搭建方法為例為你詳細說明:

在windows下安裝apache php mysql
從各官方網站下了APACHE2.050、PHP5、MYSQL4.0.20、PHPMYADMIN2.57
apache_2.0.50-win32-x86-no_ssl.msi
php-5.0.0-Win32.zip
mysql-4.0.20d-win.zip
phpMyAdmin-2.5.7.zip
系統 win2003 系統盤為: D盤
第一步: 安裝apache 並配置支持PHP
點擊安裝文件apache_2.0.50-win32-x86-no_ssl.msi
將apache安裝在 D:\apache2 目錄(隨自己喜好)下
將php-5.0.0-Win32.zip 里內容解壓到 D:\php 里
找到 php目錄里的 php.ini-dist 重命名為 php.ini 並拷到 windows目錄里(win2k 里為winnt)
如我的php.ini是拷到 D:\windows目錄
再將php目錄里的 php5ts.dll,libmysql.dll 拷到 系統目錄(system/system32) 如我的是D:\windows\system里

配置apache里的httpd.conf
打開 D:\Apache2\conf\httpd.conf 這個文件
找到 AddDefaultCharset ISO-8859-1 將其改為 AddDefaultCharset GB2312 (讓默認語言編碼為簡體中文)
找到 DocumentRoot "D:/Apache2/htdocs" 將其改為你的WEB目錄(可不改)如我的為 DocumentRoot "D:/website"
找到 DirectoryIndex index.html index.html.var 在後面加入 index.htm index.php

選擇安裝模式: 模塊化模式安裝 或 CGI模式安裝 (選一樣即可)

--------------模塊化安裝配置------------------------------------
找到 #LoadMole ssl_mole moles/mod_ssl.so 這行,在此行後加入一行
LoadMole php5_mole d:/php/php5apache2.dll
其中d:/php/php5apache2.dll 為你php目錄中php5apache2.dll所在的位置
找到 AddType application/x-gzip .gz .tgz 這行,在此行後加入一行
AddType application/x-httpd-php .php
---------------------------------------------------------------

--------------CGI安裝配置--------------------------------------
找到 AddType application/x-gzip .gz .tgz 這行,加入如下即可
ScriptAlias /php/ "d:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"
---------------------------------------------------------------

此時PHP環境基本已經配置成功
在WEB根目錄(如我的D:\website)里建一個名為test.php的文件內容如下
<? echo phpinfo(); ?>
重新啟動apache服務
用瀏覽器打開 http://localhost/test.php
如果可以看到php配置輸出信息就OK了

熱點內容
後綴解壓什麼意思 發布:2025-01-13 10:35:17 瀏覽:185
索尼安卓11如何退回安卓10 發布:2025-01-13 10:24:09 瀏覽:127
程序編譯結構 發布:2025-01-13 10:24:08 瀏覽:90
創建郵箱地址伺服器連接錯誤 發布:2025-01-13 09:49:24 瀏覽:723
linux編輯文檔 發布:2025-01-13 09:47:51 瀏覽:435
二手製冷壓縮機 發布:2025-01-13 09:43:59 瀏覽:585
網魚電腦密碼多少 發布:2025-01-13 09:33:46 瀏覽:464
如何取消子賬號密碼 發布:2025-01-13 09:22:41 瀏覽:347
抖音搜索有緩存 發布:2025-01-13 09:17:28 瀏覽:590
c語言字元數組連接 發布:2025-01-13 08:55:11 瀏覽:901