Step1: 開啟 cmd
Step2: 輸入 netstat -a -n -o
Step3: 輸入 tasklist /svc /FI “PID eq 5440” (如果你想看誰用了 443這個PORT, 而他對應的是5440這個PID)
找到了~
專門提供客製化網頁設計,App快速製作,App模板產生,手機版網頁設計服務
1) 安裝 AppServ
2) 安裝成功後你會在AppServ的bin資料夾中照到openssl.exe
3) 在cmd執行以下指令:
openssl req -config C:\AppServ\Apache2.2\conf\openssl.cnf -new -out C:\AppServ\Apache2.2\conf\server.csr -keyout C:\AppServ\Apache2.2\conf\server.pem
openssl rsa -in C:\AppServ\Apache2.2\conf\server.pem -out C:\AppServ\Apache2.2\conf\server.key
openssl x509 -in C:\AppServ\Apache2.2\conf\server.csr -out C:\AppServ\Apache2.2\conf\server.crt -req -signkey C:\AppServ\Apache2.2\conf\server.key -days 365
4) 在 C:\AppServ\Apache2.2\conf\httpd.conf 將
#LoadModule ssl_module modules/mod_ssl.so 的註解去掉
#Include conf/extra/httpd-ssl.conf 的註解去掉
5) 在 C:\AppServ\Apache2.2\conf\extra\httpd-ssl.conf 設定如下:
SSLCertificateFile “C:\AppServ\Apache2.2\conf\server.crt”
SSLCertificateKeyFile “C:\AppServ\Apache2.2\conf\server.key”
6) Window 鍵 + R
7) 輸入 services.msc
8) 重新啟動 Apache Server
9) 在瀏覽器輸入 https://localhost, 成功!
註: 如果PORT 443, 剛好被別的應用程式所使用, APACHE SERVER會重開失敗喔! 要怎麼知道伺服器PORT443 是否被使用? 請參考本篇文章 Windows 如何知道哪個應用程式正在使用哪個PORT?
Google Cloud Platform 開始支援PHP了!
雖然還是在BETA階段, 但還是讓人忍不住要測試一下呀~
這次的測試是使用CodeIgnitor來使用,
結合Google Cloud SQL,
在本機連資料庫MYSQL是沒問題,
但DEPLOY之後發現正式機一直沒辦法連上.
錯誤資訊如下:
A Database Error Occurred Unable to connect to your database server using the provided settings. Filename: core/Loader.php Line Number: 346
查了stackoverflow之後才發現 /application/config/database.php的設定需要微調才能連到資料庫:
$db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'root'; $db['default']['password'] = '密碼'; $db['default']['database'] = '資料庫名稱'; $db['default']['dbdriver'] = 'mysqli'; $db['default']['dbprefix'] = ''; $db['default']['pconnect'] = FALSE; $db['default']['db_debug'] = FALSE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ''; $db['default']['char_set'] = 'utf8'; $db['default']['dbcollat'] = 'utf8_general_ci'; $db['default']['swap_pre'] = ''; $db['default']['autoinit'] = FALSE; $db['default']['stricton'] = FALSE; $db['default']['socket'] = '/cloudsql/PROJECT-ID:INSTANCEID';
最後一行的SOCKET是codeignitor預設沒有的參數,
要記得加上才能成功連線
連線之後, 你會發現網站雖然可以啟動了,
但都沒有資料!怎麼回事呢?
原來是因為他會一直預設連到localhost,
這時必須要修改mysqli的drivers.
到 application/system/database/drivers/mysqli/mysqli_driver.php 將 db_connect 取代成以下的函數:
function db_connect() { if(isset($this->socket)){ return mysqli_connect(null, $this->username, null, $this->database, null, $this->socket); } elseif ($this->port != ”) { return mysqli_connect($this->hostname, $this->username, $this->password, $this->database, $this->port); } else { return mysqli_connect($this->hostname, $this->username, $this->password, $this->database); } }
就大功告成拉!
1. 開啓MAC Terminal
2. sudo vi /etc/hosts
3. 增加你希望對應的網域名稱如 127.0.0.1 mydomain.com
4. 儲存
5. sudo dscacheutil -flushcache (更新本機DNS快取)