window下,假設php安裝目錄為c:\program files\php5\,那麼使用命令窗口進入到該路徑下,敲入php hello.php回車,則會執行當前路徑下的hello.php文件,如果要指向其他路徑下php文件,可以在php 路徑/hello.php ,這種形式稱為CLI模式,我們平時通過瀏覽器看到的那種稱為CGI模式,至於傳遞參數,php文件在cli模式下,直接通過在文件名稱後面接參數,多個參數中間用空格隔開,在php文件裡面是通過兩個變數來獲取參數的,一個是$argv,一個是$argc,前者是傳遞參數的數組,默認第一個為php文件的名稱;後者為$argv的數組個數。
linux下,一般程序安裝都會安裝在/usr/bin/php下面,可以通過man php查看一下,如果有信息說明可以使用,使用方法類似於window下。如果前面這步成立,那麼你可以直接 php php文件 來運行php文件,如果man php沒有信息,則說明當前php執行文件沒有在環境路徑裡面,可以修改環境路徑包含php路徑,也可以類似於window進入php路徑,在執行 php php文件。其他類似於window下。
⑵ php網站在windows主機搬到linux主機後,只能訪問首頁,其他頁面地址都是404
相信網上有很多關於404頁面的製作帖子了,這里我要總結的是根據自己這一次網站被降權而總結的404自定義錯誤頁面的製作,絕對超級詳細。
一、什麼是自定義404錯誤頁面?
404自定義錯誤頁面就是當用戶輸入了錯誤的url地址或者輸入了一個不存在的url地址時,所返回的一個頁面,它的目的是:告訴瀏覽者其所請求的頁面不存在或鏈接錯誤,同時引導用戶使用網站其他頁面而不是關閉窗口網站離開。
二、404自定義錯誤頁面是如何形成的?
HTTP 404 錯誤意味著鏈接指向的網頁不存在,即原始網頁的URL失效,這種情況經常會發生,很難避免,比如說:網頁URL生成規則改變、網頁文件更名或移動位置、導入鏈接拼寫錯誤等,導致原來的URL地址無法訪問;當web伺服器接到類似請求時,會返回一個404 狀態碼,告訴瀏覽器要請求的資源並不存在。但是,Web伺服器默認的404錯誤頁面,無論Apache伺服器還是IIS伺服器,均十分簡陋、呆板且對用戶不友好,無法給用戶提供必要的信息以獲取更多線索,無疑這會造成用戶的流失。
因此,很多網站均使用自定義404錯誤的方式以提供用戶體驗避免用戶流失。一般而言,自定義404頁面通用的做法是在頁面中放置網站快速導航鏈接、搜索框以及網站提供的特色服務,這樣可以有效的幫助用戶訪問站點並獲取需要的信息。
三、404自定義錯誤頁面對SEO的影響
自定義404錯誤頁面是增強用戶體驗的很好的做法,但在應用過程中,網站製作者往往並未注意到對搜索引擎的影響,譬如:錯誤的伺服器端配置導致返回「200」狀態碼或自定義404錯誤頁面使用Meta Refresh屬性導致返回「302」狀態碼。正確設置的自定義404錯誤頁面,不僅應當能夠正確地顯示,同時,應該返回「404」錯誤代碼,而不是 「200」或「302」。雖然對訪問的用戶而言,HTTP狀態碼究竟是「404」還是「200」來說並沒有什麼區別,但對搜索引擎這則是相當重要的。
所以要確保404頁面返回的是404代碼而不是200和302.在自定義404錯誤頁面設置完畢後,一定要檢查一下其是不是能夠正確地返回「404」狀態碼。可以使用Server Header檢查工具(http://www.sendong.net/seo-tools/redirect-check/),輸入一個不存在網頁的url,查看一下HTTP Header的返回情況,確信其返回的是「404 Not found」。
四、定製404錯誤頁面的基本原則
首先應明確的是,404錯誤頁面應工作在伺服器級而不是網頁級。對定製使用動態頁面如PHP腳本類型的404頁(如:404.php、404.asp、404.aspx等)時,必須確保在PHP執行前伺服器已經順利地送出「404」狀態碼,不然,一旦執行到了ISAPI(一般運行在windows伺服器上的偽靜態腳本服務技術)級別,返回的狀態碼便只能是「200」或其他如「302」之類的重定向狀態碼了。對於大部分使用了windows虛擬主機,同時又支持PHP程序運行的伺服器,一般都使用了ISAPI技術,他們可以提供兩種自定義技術,一種靜態404.htm頁面, 這種頁面一般不直接放在網站的根目錄之下,而是放在一個「HttpError」這個文件夾之下,但是返回的狀態碼是「200」,另一種是動態404頁(如:404.php)等的設置,這種設置,就是在網站的根目錄之下放一個404.php之類的動態頁面,這樣會返回狀態碼「404」,所以網站的製作者,在虛擬主機的後台設置時,必須看清楚自己的設置,如何要做網站的SEO優化,那麼就要設置成能返回「404」狀態碼的那種,否則就會吃大虧.
其次,在自定義網站的404錯誤頁面時,對設置的錯誤頁面URL鏈接應使用相對路徑而不是絕對路徑,而且自定義404頁面應該放在網站根目錄下。盡管無效鏈接可能是多種形式的URL,但當發生404訪問錯誤時,WEB伺服器會自動將其轉到自定義的當404錯誤頁中,這跟URL的形似沒有關系。
五、404錯誤頁面的設置方法
1、Apache伺服器下設置404錯誤頁面
為Apache Server設置 404錯誤頁面的方法很簡單,首先製作一個名為404.html/404.htm/404.php/404.asp/404.aspx的頁面,視空間要求而定,再在.htaccess 文件中加入如下內容即可(.htaccess文件一般linux空間會自帶的,如果沒有這個文件,自己可以用記事本寫一個,命名為.htaccess,一定要記得去掉記事本文件的.txt哦。而windows虛擬空間是沒有這個文件的,也不用上傳這個文件):
# 404 page
ErrorDocument 404 /notfound.php
(「notfound」是你給你的自定義錯誤頁面的命名,你也可以改成Error.php等等)
注意:
(1).切記不要將404錯誤跳轉到網站主頁,比如使用了js腳本或者meta refresh跳轉技術。否則可能會導致主頁在搜索引擎中消失或者不被收錄.
(2).切記不要使用絕對URL如果使用絕對URL返回的狀態碼是「302」+「200」
2、IIS/ASP.net下設置404錯誤頁面
靜態404錯誤頁面設置
(1)做個404頁面,404.html或者404.htm,根據你的網站實際情況來。
(2)伺服器/虛擬主機管理設置,根據自己的情況,選擇「使用根目錄下的404頁面」,如果自己能找到「消息類型」選項,則要選擇「文件」或者「默認值」,而不能選擇「URL」。如果自己在主機提供商網站的管理後台找不到此「消息類型」選項請聯系技術客服做出修改。這是具有決定性的一步。 這步一定要操作好,如果在後台找不到這個消息類型,就不要自己設置,因為你設置之後肯定返回值是200,所以事先和客服聯系下。
(3)上傳404.htm到網站根目錄,打開一次試試,看是否成功了。
動態404錯誤頁面設置
首先,修改應用程序根目錄的設置,打開 「web.config」 文件編輯,在其中加入如下內容:
<P><configuration></P>
<P><system.web></P>
<P><customErrors mode=」On」 defaultRedirect=」error.asp」></P>
<P><error statusCode=」404″ redirect=」notfound.asp」 /></P>
<P></customErrors></P>
<P></system.web></P>
<P></configuration></P>
復制代碼
註:上文例中「error.asp」為系統默認的404頁面,「notfound.asp」為自定義的404頁面,使用時請修改相應文件名。
然後,在自定義的404頁面「notfound.asp」中加入:
<P><%</P>
<P>Response.Status = 「404 Not Found」</P>
<P>%></P>
復制代碼
這樣,便可以保證IIS能夠正確地返回「404」狀態碼。
所有的設置完成之後,別忘記檢測http狀態,確定返回的是404,而不是200。
⑶ PHP能否有類似VC的"SendMessage"介面能從運行的win32發送消息
你可以調用com對象,不過僅限於服務端,客戶端僅能輸出內容而已
⑷ 在Windows系統下怎麼部署PHP網站運行環境
Windows操作系統
WAMP集成環境
1、安裝WAMP集成環境
通過上面"環境下載"鏈接下載WAMP後,將其解壓至任意目錄,然後雙擊開始安裝。
4、然後就可以根據你自己的需求去部署網站了。
⑸ PHP怎麼獲取系統信息和伺服器詳細信息
獲取系統類型及版本號: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)
只獲取系統類型: php_uname('s') (或:PHP_OS,例:Windows NT)
只獲取系統版本號: php_uname('r') (例:5.1)
獲取PHP運行方式: php_sapi_name() (PHP run mode:apache2handler)
獲取前進程用戶名: Get_Current_User()
獲取PHP版本: PHP_VERSION
獲取Zend版本: Zend_Version()
獲取PHP安裝路徑: DEFAULT_INCLUDE_PATH
獲取當前文件絕對路徑: __FILE__
獲取Http請求中Host值: $_SERVER["HTTP_HOST"] (返回值為域名或IP)
獲取伺服器IP: GetHostByName($_SERVER['SERVER_NAME'])
接受請求的伺服器IP: $_SERVER["SERVER_ADDR"] (有時候獲取不到,推薦用:GetHostByName($_SERVER['SERVER_NAME']))
獲取客戶端IP: $_SERVER['REMOTE_ADDR']
獲取伺服器解譯引擎: $_SERVER['SERVER_SOFTWARE']
獲取伺服器CPU數量: $_SERVER['PROCESSOR_IDENTIFIER']
獲取伺服器系統目錄: $_SERVER['SystemRoot']
獲取伺服器域名: $_SERVER['SERVER_NAME'] (建議使用:$_SERVER["HTTP_HOST"])
獲取用戶域名: $_SERVER['USERDOMAIN']
獲取伺服器語言: $_SERVER['HTTP_ACCEPT_LANGUAGE']
獲取伺服器Web埠: $_SERVER['SERVER_PORT']
訪問用戶的瀏覽器信息: $_SERVER['HTTP_USER_AGENT'];
<script language="JavaScript">
document.write("瀏覽器名稱: "+navigator.appName+"<br>");
document.write("瀏覽器版本號: "+navigator.appVersion+"<br>");
document.write("系統語言: "+navigator.systemLanguage+"<br>");
document.write("系統平台: "+navigator.platform+"<br>");
document.write("瀏覽器是否支持cookie: "+navigator.cookieEnabled+"<br>");
</script>
⑹ 可以把window.notification寫在php中嗎
1.執行一次干凈啟動(1)、首先創建一個還原點;(2)、按Windows功能鍵+R鍵,打開運行對話框;(3)、輸入msconfig後點確定,啟動系統配置;(4)、在\「常規」選項卡,選擇\「有選擇的啟動」;(5)、清除\「載入系統服務」和\「載入啟動項」的復選框,保留\「使用原有啟動配置」;(6)、在\「服務」選項卡,先勾選\「隱藏所有windows 服務」,然後選擇\「全部禁用」,確定。2.如果還不能解決問題,一鍵恢復或重裝系統是最好的辦法。
⑺ php操作windows串口收發簡訊,求解讀串口的功能
.....重新安裝
⑻ 可以在windows 運行的能與php結合使用的即時通訊技術是什麼求大神指導!
最簡單的說,就是ajax定時刷新,比如間隔10秒。有新數據,就反饋到前台,沒新數據就等待下一次刷新。
但是真正在應用中需要考慮到消息及時性、伺服器壓力等等。
可以用comet進行設計
node.js 、socket
反正當你真的要自己開發一個im系統應用到自己的項目中的話,是一個很大的工程
⑼ windows系統下怎樣開啟php的 php
在程序開發過程中,我們可能有很多情況下需要自動的執行某一段代碼從而使程序自動更新某模塊的狀態等,下面說明了如何使系統自動執行php代碼的方法。
1.打開控制面板-》任務計劃
2.雙擊添加任務計劃點擊「瀏覽」,找到php解釋器所在的位置,並選擇php.exe給自己添加的任務起一個名字,隨便選一個選項,點擊下一步輸入系統用戶名和密碼,一般用戶名是默認輸入好的輸入完成後點擊下一步,彈出完成提示框,勾選復選框打開任務高級設置對話框,編輯「運行」欄,在後面加上你要運行的php文件,設置運行時間即可。
⑽ windows下php程序怎麼運行
一,首先到PHP官網下載php(目前php有3個stable分支版本7.1、7.0、5.6,如果有項目需求就下載需求版本,如果是個人學習,建議下載最新版),根據32位/64位系統下載ZIP包即可,不需要Debug包,(下面我要說的是Nginx+PHP的方式,推薦使用Non Thread Safe版本):http://windows.php.net/download
二、到Nginx官網下載Nginx(個人學習建議Mainline版本,項目開發建議Stable版本),注意選擇windows的包!:https://nginx.org/en/download.html
三、下載完上面的兩個包後解壓即可(建議放到不經常移動的地方)。
四、用純文本編輯器打開Nginx裡面conf文件夾裡面的nginx.conf文件,進行如下編輯即可:
worker_processesauto;
events{
worker_connections1024;
}
http{
includemime.types;
default_typeapplication/octet-stream;
#access_log\.\nul;#關閉訪問日誌
sendfileon;
tcp_nopushon;
tcp_nodelayon;
keepalive_timeout65;
types_hash_max_size2048;
ssl_protocolsTLSv1.2TLSv1.1TLSv1;
ssl_prefer_server_cipherson;
gzipon;
server{
listen80default_server;
listen[::]:80default_server;
server_name_;
roothtml;#這里指定為你網站的根目錄,比如C:html,默認是相對於Nginx目錄下
indexindex.phpindex.html;
charsetutf-8;
location/{
try_files$uri$uri/=404;
}
location~.php${
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.cpp;
fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
includefastcgi_params;
try_files$fastcgi_script_name=404;
}
}
}
五、根據需要可以編輯php.ini。
六、創建快捷方式以便於啟動php和Nginx:
桌面上右鍵-》新建-》快捷方式,位置選擇到php文件夾下的php-cgi.exe文件,並加上參數:-b 127.0.0.1:9000。(比如PHP文件夾在C:php,位置就是"C:phpphp-cgi.exe -b 127.0.0.1:9000"),下一步名字隨意,完成。
桌面上再右鍵-》新建-》快捷方式,位置選擇到Nginx文件夾下的nginx.exe即可。可以沒有參數。
再創建一個停止Nginx的快捷方式(PHP要停止直接在php的窗口按Ctrl+C即可):桌面上右鍵-》新建-》快捷方式,位置選擇到Nginx文件夾下的nginx.exe,並加上參數:-s quit。(比如Nginx文件夾在C:Nginx,位置就是"C:Nginx ginx.exe -s quit")。
七、分別雙擊上面創建的兩個快捷方式,啟動php和Nginx(php會一直有一個黑框,不要關,Nginx是黑框一閃而過,任務管理器里可以看到多個Nginx進程)。
八、在上面配置文件里設置的網站根目錄里創建一個php文件,內容為:
<?php
phpinfo();
九、打開瀏覽器訪問「127.0.0.1」或者「[::1]」,如果正常顯示PHP信息界面了就表示環境搭建成功了。
十、要關閉的話,php在那個黑框框按Ctrl+C即可,然後運行剛剛創建的那個Nginx退出的快捷方式即可關閉Nginx。
純手打,望採納!