1.首先准備解壓包:zend-loader-php5.6-windows-x86_update1(nts版)、php-5.6.37-nts-Win32-VC11-x86、mysql-5.5.19-win32;
2.PHP的配置:
(1)將php.ini.development文件重命名保存為php.ini
php.ini時區的設置:date.timezone = Asia/Shanghai
(2)編輯php.ini文件,添加一段代碼
[Zend.loader]
zend_loader.enable=1
zend_loader.disable_licensing=1
zend_loader.obfuscation_level_support=3
zend_loader.license_path=
zend_extension=”D:/webserver/php5.6.30/ext/ZendLoader.dll”
前面去“#”號:
extension=php_gd2.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_openssl.dll
extension=php_pdo_mysql.dll
extension=php_sqlite3.dll
extension_dir = “ext”
include_path = “.;E:/apm/php-5.6.37-nts-Win32-VC11-x86/includes”
Include conf/extra/httpd-vhosts.conf /*加載httpd-vhosts.conf配置文件(規定訪問網址文件路徑)*/
3.apache配置:
以fcgid模式開啟apache重要***
(1)修改apache的httpd.conf文件,加載添加mod_fcgid.so模塊。
LoadModule fcgid_module modules/mod_fcgid.so
(2)添加httpd.conf的mod_fcgid的模塊配置。(注意改路徑)
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi .php
# Where to look for the php.ini file?
FcgidInitialEnv PHPRC “C:/Users/Administrator/Desktop/php+Apache+Mysql/php”
# Set PHP_FCGI_MAX_REQUESTS to greater than or equal to FcgidMaxRequestsPerProcess
# to prevent php-cgi process from exiting before all requests completed
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
# Maximum requests a process should handle before it is terminated
FcgidMaxRequestsPerProcess 1000
# Maximum number of PHP processes
FcgidMaxProcesses 15
# Number of seconds of idle time before a php-cgi process is terminated
FcgidIOTimeout 120
FcgidIdleTimeout 120
#Path to php-cgi
FcgidWrapper “C:/Users/Administrator/Desktop/php+Apache+Mysql/php/php-cgi.exe” .php
# Define the MIME-Type for “.php” files
AddType application/x-httpd-php .php
</IfModule>
(3)修改httpd.conf中的,在 Options Indexes FollowSymLinks后面添加Includes ExecCGI====>
Options Indexes FollowSymLinks Includes ExecCGI
(4)重新啟動apache,查看你的phpinfo()中的環境變量中是否加入了fcgid
4.添加補丁文件:zend-loader-php5.6-windows-x86、mod_fcgid-2.3.9-2.4.x-x64,其中httpd-fcgid.conf文件中的C:/php路徑全部改為自己的php路徑
5.修改apache配置文件httpd.conf:
- 路徑全部改為自己的路徑;
- 找到ServerName localhost:80把注釋去掉,端口號改為8080或者不改,就用默認的80端口(http協議默認文件傳輸端口),地址寫localhost本地地址或者127.0.0.1
6.修改apache配置文件httpd-vhosts.conf文件(設置apache默認訪問文件)
注意:在httpd.conf文件中找到
Include conf/extra/httpd-vhosts.conf,將前面的#去掉,這是將httpd-vhosts.conf文件引入,不引入的話訪問本地不會跳轉到自己指定的項目文件
不引入的話服務器默認訪問\apache\Apache24\htdocs下的index.html文件
httpd.conf文件下的代碼:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot “C:/Users/Administrator/Desktop/php+Apache+Mysql/apache/Apache24/htdocs/php2″(項目路徑)
ServerName localhost(數據庫服務器地址:本地地址)
ServerAlias www.dummy-host.example.com
ErrorLog “logs/dummy-host.example.com-error.log”
CustomLog”logs/dummy-host.example.com-access.log” common
<Directory “C:/Users/Administrator/Desktop/php+Apache+Mysql/apache/Apache24/htdocs/php2”> (項目路徑)
Options Indexes FollowSymLinks Includes ExecCGI (解析php(nts)方法,httpd.conf中有這行命令,將它復制過來粘貼在這里將原來的命令替換掉)
AllowOverride None
Order allow,deny
Allow from all
DirectoryIndex index.html(默認訪問項目文件:index.html)
</Directory>
</VirtualHost>
7.將Apache添加為系統服務(cmd添加)
(1)在開始->命令里面輸入:cmd 按回車打開我們熟悉的DOS黑窗口;
(2)用cd命令切換到原來的apache安裝路徑的bin目錄下
(3)我們可以通過httpd這個命令添加apache的服務了,具體命令:
1.httpd -k install 通過該命令,被安裝的服務名稱是Apache2.2,使用的配置文件是conf\httpd.conf
2.httpd -k install -n “service name” 如果想指定服務名稱,請采用該命令
3.httpd -k install -n “service name” -f “D:\conf\custom.conf” 如果想指定服務名稱,並且使用定制的配置文件,請使用該命令
添加完后,可以啟動、關閉或重啟apache:(重啟apache即可訪問本地文件)
通常啟動、關閉或重啟apache服務可以可以使用Apache自帶的Apache Service Monitor工具,另外也可以使用net start Apache2.2或net stop Apache2.2等控制台命令,當然還可以到Windows控制面板的服務里面可視化操作,httpd也有相應的解決方案:
1、httpd -k start #啟動apache服務
2、httpd -k stop 或 httpd -k shutdown #停止apache服務
3、httpd -k restart #重啟apahce服務
啟動前,你可以通過httpd -n “service name” -t 檢查配置文件的正確性
如果我們要添加錯誤了,還可以刪除相應的服務名:
刪除apache服務命令還是要采用httpd
1、httpd -k uninstall #刪除默認的服務名
2、httpd -k uninstall -n “service name” #刪除指定的文件名
當然,添加、運行或刪除Apache的Windows服務也可以采用Windows自帶的命令方式。
附:盡量用高版本的Apache,里面好多命令都寫有,不用自己寫了。