導航:首頁 > 編程語言 > 如何部署php程序

如何部署php程序

發布時間:2023-02-21 18:06:22

㈠ 如何配置php伺服器

配置php伺服器對於程序員很重要,但很多人都不會.,那麼如何配置php伺服器呢?下面是我收集整理的如何配置php伺服器,希望對大家有幫助~~

配置php伺服器的方法

工具/原料

windows server 2008 和 windows server 2003 伺服器操作系統

fastcgi、php、mysql安裝包

IIS6安裝配置PHP環境

11. 安裝IIS

IIS是windows平台下比較成熟的web服務,安裝方法也非常簡單。

打開“開始”菜單,點擊“管理您的伺服器”(如圖所示),點擊“添加或刪除角色”(如圖所示)。

3Windows 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 網站的目錄最好獨立到一個磁碟中,新建一個為網站匿名訪問而獨立授權的賬戶,讓此賬戶可以訪問和編輯此目錄,移除其它不必要的賬戶對此目錄的訪問許可權,能有效防止網站被入侵後從而涉及到整個系統被控制

END

日常維護建議

1定期運行安全軟體進行快速掃描

定期運行一下安全軟體,可以看到安全軟體的引擎或病毒庫是否已經更新到了最新版本,如果沒有可以即時查找原因,看是否是安全軟體未運行、升級埠被禁用或其它原因,雖然安全軟體可以在後台即時掃描各種文件操作,以防止病毒入侵,但有些惡意軟體、流氓軟體或插件則不是實時防護的,雖然這些軟體不會造成伺服器宕機,但也會影響伺服器性能。

2定期檢查防火牆埠配置

隨著伺服器上的網路服務越來越多,需要打開的網路埠也越來越多,但有些埠是不需要開放的,例如你安裝了一個資料庫軟體(mysql、oracle等),這些資料庫服務很可能只需要在你伺服器的內部訪問,就完全沒有必要讓其通過防火牆,這樣能夠提高伺服器的安全,伺服器對外提供的埠越少越好;

雖然在安裝網路服務的過程中,防火牆會提示你有網路埠正在打開,是否允許通過防火牆,但有些管理員沒有細心看提示,直接就同意了,造成了大量沒有必要打開的網路埠被打開了,特別是一些木馬或惡意軟體會混水摸魚,偽裝提示信息來誘騙管理員打開網路埠,造成大量的安全隱患。進入防火牆配置界面,選擇相應的埠或網路服務,點擊“詳細信息”則可以看到此項應用的詳細信息,根據這些信息來判斷其是否應該開啟這個埠。

3任務管理器中觀察有無可疑進程,了解系統資源使用情況

任務管理器可以簡單並快速的了解服務系統資源的使用情況,並即時查看系統運行的進程和他們佔用的系統資源,根據伺服器上已開啟的各種應用的服務來判斷哪些進程是非法的,哪些進程佔用的系統資源過多。了解到這些信息後就可以即時的對伺服器進行調整,特別是佔用資源過多的進程進行分析,看是否有什麼異常並即時進行調整。

l 觀察系統進程,並自定義進程屬性

查看網路使用情況

查看系統資源使用情況

檢查IIS,了解網站安裝情況

隨時了解伺服器上網站的安裝狀況,並做以下檢查:

1、看各個網站定義的主機頭是否異常

2、 綁定的域名是否完整

3、 主目錄設置是正確

4、用戶許可權設置是否合理

5、 查看IIS的應用程序池設置是否合理,每個池下面託管的網站是否過多,是否需要設置新的應用池,是否有多餘的應用池可以刪除。

查看系統日誌,仔細檢查錯誤、警告日誌發生的原因,並急時修復相應的問題。

檢查系統用戶,查看有無多餘,可疑用戶賬戶,查看每個賬戶所屬的用戶組,特別是administrators組下面的用戶。伺服器被入侵時會出現一些欺騙性的賬戶並被加入到administrators組中,特別留心新建的多餘賬戶,弄清這些賬戶的用途,如果發現是入侵者建立的賬戶,要即時查找賬戶是被創建的原因,並修復相應的漏洞。

檢查文件系統,確保磁碟被合理分區,各個分區應該有各自的功能,如系統、資料庫、網站、備份等。各個分區的用戶授權是不相同的,如系統、備份等不需要網站的專門授權賬戶訪問,資料庫分區需要對資料庫賬戶進行單獨的授權等。既然規劃好了文件分區和功能,並進行了相應的授權,就要防止文件被亂放,以免造成安全隱患。

還要經常檢查各種新建的文件夾和文件(特別是來歷不明,名稱畸形的隱藏文件夾和文件)這些都有可能是入侵者留下的入侵痕跡。

清除垃圾文件,隨時系統運行時間的增加,會產生很多的臨時文件和日誌文件,佔用寶貴的磁碟資源,如果磁碟的可用空間過小(特別是系統盤)還會影響伺服器性能。

1、臨時文件(安裝程序、系統升級、應用程序等產生的)產生的,主要在系統盤,可以看哪些文件夾的體積異常大,可分析其內部文件,確認是臨時文件後將其刪除

2、 日誌文件,主要是IIS產生的,這些日誌文件對於查看網站運行狀態、訪問歷史很有用,但日誌有時效性,如果超過其三個月就沒有什麼用處了,但它會佔用大量的磁碟空間,所以需要定期將其刪除。

定期檢查磁碟狀態並進行碎片整理,隨著系統運行時間的增長,特別是大量的IO操作後,磁碟上會產生大量的文件碎片,這些碎片過多則會嚴重影響伺服器性能,所以定期(建議一個月)進行磁碟碎片檢查,如果系統提醒需要進行碎片整理,則進行整理。

及時升級操作系統補丁,操作系統有各種大量的補丁,特別是一些重要的安全補丁需要即時升級,這樣會有效防止黑客和病毒入侵。

及時備份重要的文件、應用、資料庫。備份分為本地備份和異地備份,有條件的可以進行異地備份,備份是為了以防萬一,當數據丟失或應用損壞時,備份就是救命稻草,因此合理的備份計劃是非常有必要的。

㈡ php手把手教你做網站(二十九)thinkphp6部署多個資料庫

前邊介紹了負載均衡,mysql同步,接下來介紹tp6分布式部署多個資料庫,實現讀寫分離。

tp6的分布式部署讀和寫仍然是一個系統,這里我們分開操作,給用戶展示的就是從資料庫,後端添加文章就是主庫,然後同步到從庫。

1、配置資料庫鏈接參數

目標:實現隨機使用資料庫展示信息,只是讀操作。

測試:前台可以讀取表中內容(存放的不一致),查看是否是隨機顯示的。

打開.env文件進行編輯

說明:

2、編輯database.php

找到deploy設置為1分布式部署,下邊不要改,都是讀,寫入的也就是後端的我們單獨建站連接主庫。

配置完成,tp6使用的是mt_rand取隨機數判斷使用哪個資料庫。

3、資料庫交互寫操作

比如瀏覽量沒必要每次都去更新資料庫,可以先使用redis緩存,存夠1000的整數倍,再去更新資料庫。

4、後台獨立,也就是寫

可以前後端分離,單獨做一個網站(沒有前端)使用ip訪問或者獨立的域名連接後台。

5、上傳附件(jquery ajax跨域上傳)

使用了nginx負載均衡,肯定是多個一樣的網站,如果圖片存放到一個站,別的就不能訪問了,可以單獨設置一個附件(壓縮包,圖片等)伺服器,可以使用二級域名連接,這就要求我們上傳附件的時候,是上傳到附件伺服器。

jqueryURL

API控制器apdpic方法

說明:

也可以先傳到後台伺服器然後使用(php)ftp上傳,或者是通過curl上傳到附件伺服器,感覺那樣畢竟麻煩,直接設置跨域會比較簡單。

也測試了使用jsonp跨域,但是不能上傳附件。

6、thinkphp6實現讀寫分離(在一個站點)

我個人是不喜歡這樣的,負載均衡應該是均衡地讀,也就是前台單獨一個站點,後端的寫是另一個獨立的站點,看個人喜好吧。

獨立後台的優點:可以提升安全性,因為我們的後台網址是不公開的,避免用戶猜測一些後台的信息。

.env配置按照1所述編輯,默認第一個是主庫。

database.php

願大家在新的一年心想事成,萬事如意!!!

㈢ 前端vue與後端Thinkphp在伺服器的部署

vue在服務端部署時,我們都知道通過npm run build 指令打包好的dist文件,通過http指定是可以直接瀏覽的,Thinkphp通過域名指向index.php文件才可以瀏覽。要使前端正常調用後端數據,有兩種方法:1、前端跨域調用後端數據,2、前端打包文件部署在後端的伺服器文件夾下(同域)。

web伺服器: apache

一、跨域

在伺服器配置站點:

在路徑/home/www/  下創建test項目文件夾,用來放項目文件。  

找到httpd-vhosts.conf文件配置站點  

前端站點:  

    ServerName test.test.com  

    DocumentRoot "/home/www/test/dist"    

    DirectoryIndex index.html  

後端站點:  

    ServerName test.testphp.com  

    DocumentRoot "/home/www/test/php"    

    DirectoryIndex index.php  

將前端打包好的dist文件放在/home/www/test/ 文件夾下,運行http://test.test.com可瀏覽,當路徑改變時,刷新會出現404錯誤。此時dist文件下創建一個.htaccess文件,當路徑不存在時,路徑指向http://test.test.com/index.html能解決此問題。

  RewriteEngine On  

  RewriteBase /  

  RewriteRule ^index\.html$ - [L]  

  RewriteCond %{REQUEST_FILENAME} !-f  

  RewriteCond %{REQUEST_FILENAME} !-d  

  RewriteRule . /index.html [L]  

在/home/www/test文件夾下創建項目根目錄php文件夾,將thinkphp文件放在php下。TP5的入口文件在public文件下,在這將public下的入口文件index.php挪到php文件夾下(個人習慣將入口文件放在項目根目錄), 後端綁定Index模塊。

前端調用後端介面,存在跨域,跨域解決方法有好幾種,在這我將在後端php做配置,解決跨域問題,在公用控制器設置跨域配置:

class Common extends Controller  

{  

    public $param;  

    // 設置跨域訪問  

    public function _initialize()  

    {  

        parent::_initialize();  

        isset($_SERVER['HTTP_ORIGIN']) ? header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']) : '';  

        header('Access-Control-Allow-Credentials: true');  

        header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');  

        header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, authKey, sessionId");  

$param =  Request::instance()->param();  

$this->param = $param;  

    }  

}  

前端調用登錄介面: this.axios.post('http://test.testphp.com/index.php/base/login', {user: '', password: ''})。

(可在webpack.base.conf.js文件下可定義介面:http://test.testphp.com/index.php/)

二、同域

後端配置同上,公共配置器中的header配置注釋。將前端的dist文件下的所有文件(包含.htaccess),放在php文件夾下。將後端index控制器的index方法的路徑重定向php下的index.html文件:

namespace app\index\controller;  

use think\Controller;  

class Index extends Controller  

{  

    public function index() {  

$this->redirect('/index.html');  

    }  

}  

前端調用登錄介面: this.axios.post('/index.php/base/login', {user: '', password: ''})

轉自:https://blog.csdn.net/qq_35465132/article/details/78986675

㈣ 寫網站需要用到php,怎樣搭建php環境

首先需要去Phpstudy官網下載相應系統的軟體包,這里默認使用的是XP系統(WIN7系統步驟相同),選擇軟體包(這里下載的是phpStudyLite版本,也可以根據不同的系統愛好下載喜歡的軟體報版本)進行下載安裝即可。

下載完軟體後得到軟體包,雙擊解壓到指定的目錄下,這里解壓c:/phpstudy下。

解壓完後,會彈出防止重復化提示,這里選擇「是」即可。

隨後,桌面彈出軟體運行的控制面板,可以看到軟體已經啟動起來了,包括他的啟動狀態。

現在,可以進入C:/phpstudy進入目錄下看到有個「www」文件夾,這個目錄就是存放PHP網站程序的地方,直接放置到其根目錄下即可。
這里,用discuz3.2程序為例,把程序放置WWW目錄根目錄下
控制面板上的「Mysql管理器」是用來管理mysql資料庫的,點擊下,可以通過瀏覽器進入MySQL管理頁
這是點擊後的mysql管理登陸頁面,這里提示下,它的默認賬號密碼均為root。
登陸後可以看到。包括,導入,導出,刪除等操作。左邊列出的是已有的資料庫,除了默認的系統資料庫外,還有一個test測試資料庫,不喜歡的朋友,可以直接刪掉就好。
返回桌面軟體運行控制面板,看到「其他選項菜單」按鈕,它裡面主要包括一些常用的參數的設定,這里點擊看下
點擊「其他選項菜單」按鈕,可以看到裡麵包括很多設定項,如配置文件、版本切換、站點域名管理等等,具體設定大家可以看下軟體提供的詳細教程,這里不再詳細解說。
在上面,已經啟動了軟體,而且也把discuz3.2程序,放置到www文件夾的根目錄下了。下面就打開瀏覽器看下效果吧,瀏覽器地址欄輸入localhost(如果把PHP程序包A文件夾放置到www目錄下的話,這里輸入的地址就為localhost/a),回車,看到出現discuz3.2的安裝界面了,證明本地php環境已經搭建好了

㈤ Thinkphp5項目在nginx伺服器部署

1,切換到nginx的配置目錄,找到nginx.conf文件

    cd   /usr/local/nginx/conf

    vim  nginx.conf

2,如果是單項目部署的話,只需要在nginx.conf文件裡面加上以下

server{

        listen 80;

        # 域名,本地測試可以使用127.0.0.1或localhost

        server_name www.zhangc.cn;

        # php項目根目錄

        root /home/data-www/blog;

        location /{

                # 定義首頁索引文件的名稱

                index index.php index.html index.htm;

                # 影藏入口文件

                if (-f $request_filename/index.html){

                            rewrite (.*) $1/index.html break;

                }

                if (-f $request_filename/index.php){

                            rewrite (.*) $1/index.php;

                }

                if (!-f $request_filename){

                            rewrite (.*) /index.php;

                }

                try_files $uri $uri/ /index.php?$query_string;

        }

        # PHP 腳本請求全部轉發到 FastCGI處理. 使用FastCGI協議默認配置.

        # Fastcgi伺服器和程序(PHP)溝通的協議

        .location ~ .*\.php${

                # 設置監聽埠

                fastcgi_pass 127.0.0.1:9000;

                # 設置nginx的默認首頁文件

                fastcgi_index index.php;

                # 設置腳本文件請求的路徑

                fastcgi_param SCRIPT_FILENAME$document_root$fastcgi_script_name;

                # 引入fastcgi的配置文件

                include fastcgi_params;

                fastcgi_split_path_info ^(.+?\.php)(/.*)$;

                set $path_info $fastcgi_path_info;

                fastcgi_param PATH_INFO $path_info;

                try_files $fastcgi_script_name =404;

        }

}

3,如果多項目部署,就需要配置vhost

第一步:編輯nginx.conf文件,在最後加上     include    vhost/*.conf;

第二步:進入vhost文件夾,創建    域名.conf    文件,如創建一個:quanma.meyat.com.conf

第三步:編輯quanma.meyat.com.conf文件,內容如下:

        server

        {

                listen 80;

                server_name quanma.meyat.com;

                index index.html index.htm index.php default.html default.htm default.php;

                root /data/wwwroot/default/quanma/public/;

                #error_page 404 /404.html;

                location / {

                        index index.html index.php;

                        if (-f $request_filename/index.html){

                                rewrite (.*) $1/index.html break;

                        }

                        if (-f $request_filename/index.php){

                                rewrite (.*) $1/index.php;

                        }

                        if (!-f $request_filename){

                                rewrite (.*) /index.php;

                        }

                        try_files $uri $uri/ /index.php?$query_string;

                }

                location ~ [^/]\.php(/|$)

                {

                        # comment try_files $uri =404; to enable pathinfo

                        #try_files $uri =404;

                        fastcgi_pass 127.0.0.1:9000;

                        fastcgi_index index.php;

                        include fastcgi_params;

                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

                        fastcgi_split_path_info ^(.+?\.php)(/.*)$;

                        set $path_info $fastcgi_path_info;

                        fastcgi_param PATH_INFO $path_info;

                        try_files $fastcgi_script_name =404;

                        #include fastcgi.conf;

                        #include pathinfo.conf;

            }

            location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

            {

                    expires 30d;

            }

            location ~ .*\.(js|css)?$

            {

                    expires 12h;

            }

            # Disallow access to .ht, .svn, .bzr, .git, .hg, .cvs directories

            location ~ /\.(ht|svn|bzr|git|hg|cvs) {

                    deny all;

            }

            #access_log /date/nginx/bmp.com.conf/access.log main;

}

㈥ 在Windows系統下怎麼部署PHP網站運行環境

工具/原料

  1. Windows操作系統

  2. WAMP集成環境


方法/步驟

1、安裝WAMP集成環境

通過上面"環境下載"鏈接下載WAMP後,將其解壓至任意目錄,然後雙擊開始安裝。


4、然後就可以根據你自己的需求去部署網站了。

㈦ 伺服器上怎麼安裝php程序

你好,如果你的伺服器是Windows系統,那麼你需要遠程到你的伺服器,進行啟動IIS(asp環境),如果你需要php環境,你可以從xp.cn(小皮)或者bt.cn(寶塔)安裝面板
如果你的伺服器是Linux,建議使用寶塔
打開終端,不同Linux系統的輸入指令不同:
Centos安裝腳本
終端輸入:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
Ubuntu/Deepin安裝腳本
終端輸入:wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
Debian安裝腳本
終端輸入:wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
Fedora安裝腳本
終端輸入wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
輸入後進行安裝就可以了

閱讀全文

與如何部署php程序相關的資料

熱點內容
奔跑程序員 瀏覽:468
伺服器如何搭建類似github 瀏覽:292
明日之後安卓太卡怎麼辦 瀏覽:502
如何使用命令方塊找到村莊 瀏覽:766
泛函壓縮映像原理 瀏覽:521
win10清除文件夾瀏覽記錄 瀏覽:964
如何查看伺服器域中所有服務 瀏覽:384
學mastercam91編程要多久 瀏覽:999
如何查伺服器地址和埠 瀏覽:911
教學雲平台app怎麼下載 瀏覽:389
單片機510教學視頻 瀏覽:624
陝西信合app怎麼查看自己的存款 瀏覽:663
風冷冰箱有壓縮機 瀏覽:274
android實現wifi連接wifi 瀏覽:669
飛豬app怎麼幫別人值機 瀏覽:924
筆記本開我的世界伺服器地址 瀏覽:546
怎樣隱藏bat命令 瀏覽:127
android開發創意 瀏覽:138
京劇貓為什麼進不去伺服器 瀏覽:784
怎麼自己免費製作一個手機app 瀏覽:583