Windows下apache+php的安裝和配置

1、php安裝和配置

1.下載和安裝

PHP下載地址http://windows.php.net/download,下載最新線程安全版PHP zip壓縮包,解壓到本地安裝目錄:C:\develop\phpphp

注意:下載的PHP VC版本不能比前面安裝的vc redist版高html

2.配置

 在php目錄下找到php.ini-development文件,複製一份並重命名爲php.inimysql

更改自定義擴展目錄,找到extension_dir,更改成:redis

extension_dir = "C:/develop/php/ext"

開啓擴展,找到extension,根據須要去掉前邊註釋:sql

extension=php_bz2.dll
extension=php_curl.dll
extension=php_com_dotnet.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_gmp.dll
extension=php_intl.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll      ; Must be after mbstring as it depends on it
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
extension=php_shmop.dll

; The MIBS data available in the PHP distribution must be installed. 
; See http://www.php.net/manual/en/snmp.installation.php 
;extension=php_snmp.dll

extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll

設置默認時區,找到date.timezone,更改成:apache

date.timezone = Asia/Shanghai

 

2、apache安裝和配置

1.下載和安裝

Apachelounge官方下載地址:http://www.apachelounge.com/download/,首先下載並安裝vc redist,這是Apache運行必需的一個組件windows

Apache Lounge提供了創建在x86和x64系統的VC11,VC14,VC15 (Visual Studio 2012, 2015 or 2017分別編譯)三個版本瀏覽器

根據選擇的apache安裝對應的vc redist,下載apache的壓縮包,解壓到本地安裝目錄:C:\develop\Apache24安全

2.配置

進入apache的conf目錄,打開apache的配置文件httpd.confphp7

修改apache軟件所在目錄:

ServerRoot "C:\develop\Apache24"

修改主機名:

ServerName localhost:80

修改htdocs目錄:

DocumentRoot "C:/develop/edoc/docphp"
<Directory "C:/develop/edoc/docphp">

修改默認索引以支持php:

DirectoryIndex index.php index.html index.htm

加載php5模塊:

LoadModule php5_module "C:/develop/php/php5apache2_4.dll"
<IfModule php5_module> 
    PHPIniDir "C:/develop/php/" 
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
</IfModule>

php7對應的爲:

LoadModule php7_module "C:/develop/php/php7apache2_4.dll"
<IfModule php7_module> 
    PHPIniDir "C:/develop/php/" 
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
</IfModule>

開啓rewrite功能:

LoadModule rewrite_module modules/mod_rewrite.so

其餘模塊能夠參考apache模塊詳解:https://blog.csdn.net/yangyu19910407/article/details/10008007

 將apache安裝成服務:

httpd -k install -n "apache4edoc" -f "C:\develop\Apache24\conf\httpd.conf"

httpd命令參數含義:

 -f config
在啓動中使用config做爲配置文件。若是config不以"/"開頭,則它是相對於ServerRoot的路徑。其默認值是conf/httpd

-k start|restart|graceful|stop|graceful-stop
發送信號使httpd啓動、從新啓動或中止

下列參數僅用於Windows平臺
-k install|config|uninstall
安裝Apache爲一個Windows NT的服務;改變Apache服務的啓動方式;刪除Apache服務。

-n name
指定Apache服務的名稱爲name

能夠使用httpd -h查看命令幫助

成功啓動Apache後,在docphp目錄編寫phpinfo.php:

<?php
phpinfo();
?>

瀏覽器地址欄輸入localhost/phpinfo.php,顯示PHP相關信息即代表成功了。

 遇到問題:

1.PHP Warning: PHP Startup: Unable to load dynamic library 'C:\develop\php\ext\php_curl.dll' - �Ҳ���ָ����ģ�顣 

in Unknown on line 0

將C:\develop\php目錄下的libeay32.dll、libssh2.dll、ssleay32.dll複製到apache安裝目錄的bin目錄下,我這裏是C:\develop\Apache24\bin,也有說複製到系統的system32下,應該也是能夠的不過這樣不知道對別的功能有沒有影響,這幾個文件的版本好像仍是挺多的

2.PHP Warning: PHP Startup: Unable to load dynamic library 'C:\develop\php\ext\php_intl.dll' - �Ҳ���ָ����ģ�顣 

in Unknown on line 0

將C:\develop\php目錄下的icu*.dll之類的文件複製到C:\develop\Apache24\bin,固然也能夠複製到system32

在解決問題的時候,發現了這麼句話,感受頗有用:

When any application attempts to use a dll file in windows, the system searches for this file using the following order:

The directory from which the application loaded.
The windows\\system32 directory.
The windows\\system directory.
The windows directory.
The current directory.
The directories that are listed in the PATH environment variable.

原文是在:https://www.jianshu.com/p/7e9b51c9cdd1

弄了好多天的東西終於成功了!!!

相關文章
相關標籤/搜索