是這樣的,我的電腦本來是 windows 10 1809 ,但因為手賤,所以就突然給它更新至 windows 10 1903。
我是用 windows update 更新上去的,中間還遇到 amd chipset 驅動的問題而停止安裝更新,然後上 amd 官網下載最新的晶片組驅動來安裝後就可以更新了。
本來想說會沒事…但沒想到更新 1903 後系統整體變的頗遲緩,而且有一些軟體的反應變的怪怪的,然後視窗的放大縮小都會遲緩而且還會有殘影;想說之前更新 1809 時也沒這個狀況,那我就回復至 1809 好了,是用系統原本的回復功能,結果回復回去,那一些遲緩的問題也跟著回去…後來果斷就重新安裝 1903 算了(雖然是說果斷,但我還是這樣遲緩的用了近一周才重灌…)。
全新安裝後的 1903 就都很順了…
但是…
2019-08-11
2019-07-20
如果透過 windows batch command 來新增環境變數
我會有這個需求,主要是因為工作的地方有 AD 權限的管制,只要執行需要提升權限的程式時都需要請資訊部門的人來 key 管理帳密,但理論上 user 應該是對自己的東西有權限的,只是 windows 在叫出環境變數的地方是有小盾牌要提權的…所以我才想到使用 batch command 的方式。
batch command 的方式有分一般跟進階兩種
以下都以設定 JAVA_HOME 為例
一般:
進階:
一般之所以一般,是因為這個方式的有效時間只在那個作用視窗中,也就是你打開 cmd 後,下了那兩行指令,然後把 cmd 視窗關掉,這時就失效了,因為該方式並沒有寫到真正的環境變數裡面。
進階的方式就有了,視窗關掉後依然有效,甚至重開機都是有效的…
那要怎麼刪除?
這就比較麻煩了,如果只是要讓路徑失效,可以使用
batch command 的方式有分一般跟進階兩種
以下都以設定 JAVA_HOME 為例
一般:
set JAVA_HOME="xxxxxx\jdk-xxxx"
set PATH=%PATH%;%JAVA_HOME%\bin
進階:
setx JAVA_HOME "xxxxx\jdk-xxxx"
setx PATH "%PATH%;%JAVA_HOME%\bin"
一般之所以一般,是因為這個方式的有效時間只在那個作用視窗中,也就是你打開 cmd 後,下了那兩行指令,然後把 cmd 視窗關掉,這時就失效了,因為該方式並沒有寫到真正的環境變數裡面。
進階的方式就有了,視窗關掉後依然有效,甚至重開機都是有效的…
那要怎麼刪除?
這就比較麻煩了,如果只是要讓路徑失效,可以使用
setx JAVA_HOME ""的方式…但 %JAVA_HOME% 這個變數還是存在,只是是空的,如果要刪除這個變數或請管理員來開環境變數的gui畫面來刪除,或者是用 reg delete 的方式,但這應該也要權限
如何在 Windows 讓 Apache 在一個 host 中,指定某個資料夾下的 php 是跑不同的版本
標題下的好像很怪…簡略說明一下
其實就是 Windows 下 Apache 跑 php-fpm (Fastcgi) - 使用 VirtualHost 這篇的另一個形式…我的目的還是要在一個 apache service 中跑不同版本的 php ;只是之前是使用 VirtualHost 來操作,但我現在是希望在一個 host …或者也可以理解為一個 VirualHost 下,不同的 Directory 可以跑不同的 php 版本,這樣我就不用換 VirualHost 的 domain:port ,只要切換 localhost/______/ 就好了。
前置作業說明:
其實就是 Windows 下 Apache 跑 php-fpm (Fastcgi) - 使用 VirtualHost 這篇的另一個形式…我的目的還是要在一個 apache service 中跑不同版本的 php ;只是之前是使用 VirtualHost 來操作,但我現在是希望在一個 host …或者也可以理解為一個 VirualHost 下,不同的 Directory 可以跑不同的 php 版本,這樣我就不用換 VirualHost 的 domain:port ,只要切換 localhost/______/ 就好了。
前置作業說明:
- 跟之前一樣使用 xampp ,apache 2.4.39 x64 + php 7.3.7 x64,這是主要的,然後指定一個 localhost/php52 這個位置可以跑 php 5.2.17 x86
- 作不作 vhost 都無所謂,因為這一篇要的就是一個 host 就做到可以跑不同的 php 版本
- 如前一篇說的,因為此種方式已經算改了 xampp 的部份算大改了,所以會建議就不要讓 apache load httpd-xampp.conf 了,或者將 httpd-xampp.conf 中的每一行都用 # 註解起來
2019-07-18
Windows 下 Apache 跑 php-fpm (Fastcgi) - 使用 VirtualHost
因為工作需求…有些案子會需要用頗舊的 php 版本來跑,但我又不想在系統資源有限的測試機 (本機 windows 10 電腦,還不是server) 安裝一堆配合 php 的 apache 版本,然後又在那邊糾結 x86/x64 的,所以想到在 linux 上在用 nginx 時好像都是用 php-fpm 在跑 php ,而不是跟 apache 那樣在 loadmodule (難怪 nginx 比較輕量級),而且 loadmodule 會使用固定的 module name ,像 php7 是 php7_module, php5 是 php5_module …不同版本之間是還行,但同一個大版本之後想分載各個小版本會因為都是用同一個 module name 的關係會有衝突而載入失敗,所以最後在想比較簡單的方式…那就是讓 apache 也走類似 php-fpm 的 fastcgi 方式。
(為什麼說類似,因為好像 php-fpm 沒有 windows 版,而且好像 windows 的 php 中的 php-cgi.exe 就是為了讓 windows 有 php-fpm 而用的)
所以接下來有幾個重點,主要是要讓 apache 2.4.39 x64 在使用 VirtualHost 的情況下,讓走 80 port 跑 php 7.3.7 x64 ,而 8080 port 跑 php 5.2.17 x86
前置作業說明:
(為什麼說類似,因為好像 php-fpm 沒有 windows 版,而且好像 windows 的 php 中的 php-cgi.exe 就是為了讓 windows 有 php-fpm 而用的)
所以接下來有幾個重點,主要是要讓 apache 2.4.39 x64 在使用 VirtualHost 的情況下,讓走 80 port 跑 php 7.3.7 x64 ,而 8080 port 跑 php 5.2.17 x86
前置作業說明:
- apache 2.4.39 x64 + php 7.3.7 x64 我是用 xampp ,然後再去 php 網站找到 5.2.17 x86 回來放進 xampp 資料夾中
- 我不特別講 apache vhost 的設定,反正這個 google 一下資料就很多,所以下面的「操作」我是以 vhost 已經分別可以讓 80, 8080 的網頁服務執行成功的情況下來講的
- 因為我是分 80, 8080 來跑 vhost ,所以記得 httpd.conf 的 listen 要加 80, 8080
2019-07-15
使用 cordova-plugin-camera 後,在調用相機時會詢問相機權限
將
像這樣
不過其實不特別加,我在測試時相機是可以正常開啟然後拍照的…我不確實是不是 cordova-plugin-camera 某個版本之後已經可以省略掉詢問相機權限的動作,但照上面的加確實在啟動相機前是會詢問權限的。
不過,其實我覺得應該是做在安裝 app 時會先告知本程式會使用哪一些權限,但我找不到應該怎麼寫是能在安裝 app 前就告知權限的方式,我是覺得應該是放在 project-root/config.xml 中,但…把上面的那個方式放進 config.xml 中在 build 時會 failed…
所以
todo:1 - 應該要找到是可以在安裝前就宣告權限的方法
todo:2 - 上面的方式不適用 PhoneGapBuild ,但相機仍可使用,但只會出現詢問儲存媒體的權限而已,所以可能也要想想 PhoneGapBuild 會詢問相機權限的方法
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
放進 project-root/plugin/cordova-plugin-camera/plugin.xml 的「<user-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE />」之後<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
像這樣
<config-file target="AndroidManifest.xml" parent="/*">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
</config-file>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
</config-file>
不過其實不特別加,我在測試時相機是可以正常開啟然後拍照的…我不確實是不是 cordova-plugin-camera 某個版本之後已經可以省略掉詢問相機權限的動作,但照上面的加確實在啟動相機前是會詢問權限的。
不過,其實我覺得應該是做在安裝 app 時會先告知本程式會使用哪一些權限,但我找不到應該怎麼寫是能在安裝 app 前就告知權限的方式,我是覺得應該是放在 project-root/config.xml 中,但…把上面的那個方式放進 config.xml 中在 build 時會 failed…
所以
todo:1 - 應該要找到是可以在安裝前就宣告權限的方法
todo:2 - 上面的方式不適用 PhoneGapBuild ,但相機仍可使用,但只會出現詢問儲存媒體的權限而已,所以可能也要想想 PhoneGapBuild 會詢問相機權限的方法
訂閱:
文章 (Atom)