1、準備工具:
php
php5.6 下載網址:http://nginx.org/en/download.htmlhtml
nginx 下載網址:http://windows.php.net/download/mysql
symfony2 用php命令下載(如下講講到)nginx
這裏下載的是nginx1.8.0,php5.6.12,symfony2.7,而後所有解壓放在c:下web
2、安裝nginxsql
打開doc窗口,用命令來到nginx1.8.0的根目錄下,你會發現有一個nginx.exe的文件,在doc窗口輸入windows
start nginx.exe啓動nginx.exe。啓動成功後你會發現任務管理器有一個nginx.exe的進程。瀏覽器
瀏覽器地址輸入http://localhost,你會看到nginx歡迎頁面,nginx搞定!!!!服務器
ps:nginx經常使用命令app
start nginx.exe
nginx.exe -s reload
nginx.exe -s stop
3、安裝php
個人php目錄在c:\php5.6.12
PHP:安裝及配置
PHP配置:在DedeCMS目錄下新建文件夾PHP5,壓縮包解壓至此目錄 D:/wwwroot/PHP5,把php.ini-production重命名爲php.ini,用編輯器打開此文件(最好不要用記事本打開),此文件爲PHP配置文件。
查找定位至:; extension_dir = "./" ,將前面的分號去掉並修改成:extension_dir = "C:/php5.6.12/ext"
查找定位至:;extension=php_gd2.dll,將前面的分號去掉爲:extension=php_gd2.dll
查找定位至:;extension=php_mbstring.dll,將前面的分號去掉爲:extension=php_mbstring.dll
查找定位至:;extension=php_mysql.dll,將前面的分號去掉爲:extension=php_mysql.dll
查找定位至:;extension=php_mysqli.dll,將前面的分號去掉爲:extension=php_mysqli.dll
查找定位至:;extension=php_pdo_mysql.dll,將前面的分號去掉爲:extension=php_pdo_mysql.dll
查找定位至:;cgi.force_redirect = 1,將前面的分號去掉爲:cgi.force_redirect = 1
查找定位至:;cgi.fix_pathinfo=1,將前面的分號去掉爲:cgi.fix_pathinfo=1
查找定位至:;cgi.rfc2616_headers = 0,將前面的分號去掉並改成:cgi.rfc2616_headers = 1
配置文集修改後,咱們就能夠啓動php了
doc命令進入php安裝的根目錄,輸入php-cgi -b 127.0.0.1:9000回車。啓動成功後,不要關閉doc窗口
我在服務器上配置時會出現這種錯誤,
能夠參考:http://jingyan.baidu.com/article/4f7d57129fa86e1a201927de.html來解決
啓動成功後的界面是:
4、用php下載symfony
先把php目錄加入環境變量中去。
1.打開doc窗口,輸入cd \來到c盤根目錄下,運行命令
2.php -r "readfile('http://symfony.com/installer');" > symfony.phar
下載了 symfony.phar到c盤根目錄下。
3.而後用php symfony.phar new symfony新建了一個名爲symfony的項目
此時,c盤已經有一個symfony項目了。
5、在nginx.conf中添加對php的支持
nginx.conf在nginx根目錄下的conf文件夾中,打開,將
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
中的註釋所有打開,而且配置爲:
。其中root;是項目所在目錄,咱們把項目目錄設置在c:\symfony2.7下,,再配置如圖:
這樣,nginx便支持php的訪問。咱們在項目目錄下新建index.php(即c:\symfony2.7目錄下)
<?php echo "hello php";?>
而後重啓nginx,刷新瀏覽器便看到屏幕輸出hello php.
ps:每次修改nginx的配置,都得重啓如下nginx!!!
6、nginx整合symfony2.7
咱們的項目在c:/symfony2.7,symfony2.7便是整個symfony項目。項目路徑必須在nginx.conf的配置中改到c:\symfont2.7\web下。
把
#location ~ \.php$ {
# root C:/symfony2.7/web;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME C:/symfony2.7$fastcgi_script_name;
# include fastcgi_params;
#}
替換成
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index app.php;
include fastcgi_pathinfo.conf;
set $real_script_name $fastcgi_script_name;
set $path_info "";
if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
}
新建文件fastcgi_pathinfo.conf而且寫入如下內容:
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
#fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
保存,放在conf目錄下。重啓nginx,訪問http://localhost/app.php便可看到symfony歡迎頁面,整合成功!!!!