Linux – CentOS – 安裝 XAMPP

下載 XAMPP

*因為須要安裝的權限較高,可使用指令 sudo 或直接使用 root 操作。所以若使用 root 身分,就不需要在打 sudo 的指令,後續不贅述。

1.我是從這裡找
1

 

 

 

2.按一下這裡
2

3. 選擇 XAMPP Linux
3

4. 找最新版本,如 5.6.14 (這剛好對應PHP的版本),點進去
4

 

5.一律取消自動跳出視窗的下載,因為我要找網址。找到 direct link 連結後檢視標籤元素,可以看到實際網址。這就是我們要的。
5

6.
使用 wget 下載。附檔名『.run』後面的問號參數文字可以去掉。變成以下

安裝 XAMPP

參考官網

先更改權限

執行安裝檔

請把上方的 * 更改為你下載的版本。例如你下載的版本是『xampp-linux-x64-5.6.14-0-installer.run』那就將 * 替換為 『x64-5.6.14-0』。

XAMPP 安裝完成

Linux 的 XAMPP 位置在 『/opt/lampp』。會發現安裝的是『Apache + MariaDB + PHP + Perl』,為什麼不是 MySQL 呢?參考 官方說明 ,從 xampp 的 5.5.30版與5.6.14版之後就將 MariaDB 替代 MySQL。MariaDB 完全相容 MySQL,因為是由 MySQL 創始人主導開發。詳細說明可參考 維基百科 。

啟動XAMPP

要注意在 linux 中 xampp 的名稱叫做 lampp 喔!剛灌好會自動幫你啟動 Apache。手動操作如下

啟動

關閉

看狀態

成功啟動會看到這樣

擷取

 

跟目錄位置會在 /opt/lampp/htdocs 底下喔!

ubuntu 18 – 使用 Docker 建立 php+Laravel+Nginx+MySQL+phpMyAdmin

Ubuntu 18

這篇記錄主要在 ubuntu 底下,使用 Laradock 快速建立 Laravel + Nginx + MySQL 。

安裝基本工具

安裝 Docker

將自己的帳號加到 docker 這個群組,可避免之後運行 “docker-compose” 要打上 “sudo docker-compose…”

若要生效似乎要重啟系統。

建立專案路徑

例如取名 laravel-test

取得 Laradock

將 APP_CODE_PATH_HOST 指定我們的專案路徑,不可使用 ~/projects/laravel-test

啟用需要的服務

進入 Workspace 容器

這時候容器內的 /var/www/ 就會對應到容器外的 ~/projects/laravel-test/,我們安裝 laravel

更新 laravel 的 storage 寫入權限

改資料庫設定

打開瀏覽器輸入 http://localhost 就能看到 Laravel 啟用視窗了。若要修改 Laradock 當前的預設設定是

(選用)建立站台

若要建立多個站台,可複製使用 laradock 已經提供的模板

修改如

讓網址輸入 http://laravel.test 會指向 127.0.0.1

重新啟動 Laradock

注意要使用 stop 和 start。因為 docker-compose down 會卸載容器;docker-compose up 會重新建立容器,設定會一切重投

MySQL

參考,預設使用最後一版,目前是 MySQL 8.0,因為是採用 Docker 映像檔,若進入 mysql 要使用 docker-compose 指令。預設帳密都是 root,這可以在 Laradock 中的 .env 搜尋 “MYSQL_ROOT_PASSWORD” 可以看到。

修改密碼模式。參考,這非常重要,因為 MySQL 8 預設的加密模式 caching_sha2_password 目前在 phpmyadmin 還沒辦法支援,這篇文章有提到。

進入 phpmyadmin ,Server 輸入 mysql,Username 與 Password 輸入:default/secret。當然用 root/root 也可以登入。

phpMyAdmin

參考,我偏好 MySQL 8 所以啟用

打開 http://localhost:8080 就可進入。若要改 port ,可以到 Laradock 的 .env 修改 PMA_PORT=8080

 

參考

php – joomla! 在 linux 底下無論如何都無法寫入的權限問題

當我們在 CentOS 設定 Joomla! 路徑是 755 與擁有者/群組都是 apache 的時候,我們仍然無法安裝任何套件或語言,在 「System (系統) > System Information (系統資訊) > Folder Permissions (資料夾權限) 」仍然看到滿滿的 Unwritable (無法寫入)

我們可以檢查是不是預設的 SELinux 擋住了。下指令檢查 SELinux 當前狀態

  • Enforcing:SELinux 正在執行
  • Permissive:臨時關閉
  • Disabled:已經關閉

 

接著我們讓他暫時關閉,可以下指令

不用重新啟動伺服器,我們直接重新整理應該就能看到 可寫入 (Writable)。

但是暫時關閉當下次系統重起的時候,仍然會打開。若要永久關閉 SELinux 那接著要修改檔案

並修改參數

這樣重新啟動伺服器預設就會關閉囉!

 

參考

php – swoole 安裝

Swoole

PHP的異步、並行、高性能網絡通信引擎,使用純C語言編寫,提供了PHP語言的異步多線程服務器,異步TCP/UDP網絡客戶端,異步MySQL,異步Redis,數據庫連接池,AsyncTask,消息隊列,毫秒定時器,異步文件讀寫,異步DNS查詢。 Swoole內置了Http/WebSocket服務器端/客戶端、Http2.0服務器端。

我在 Ubuntu 16 Command-Line 直接鍵入 phpize 出現

那就代表沒有安裝,我們先安裝它。用 aptitude 搜尋

  • 其中 php7.2-dev 可以更換成你的任何 7.x 版本

查看安裝好的 phpize 位置

 

安裝 swoole

方法一

建議可以使用 PHP 官方的 pecl 工具下載,先升級主機預設的 pecl

因為須要 php-devel 擴展,所以安裝或升級成屬於你的版本號。這是 centOS 範例

透過 pecl 安裝

以上若有發生錯誤,可以參考網友發生 phpize 錯誤的文章

方法二

可用 aptitude 安裝/確定以下工具,參考參考

  • cmake
  • gcc
  • autoconf
  • pcre
  • make

使用 git

複製後,依序指令

安裝好後,修改 php.ini 。注意 php.ini 有兩個

  • /etc/php/7.2/cli/php.ini <—- 務必修改它,因為 swoole 要從 command line 呼叫
  • /etc/php/7.2/apache2/php.ini <—- 也可修改它,若要從瀏覽器執行 swoole 就需要修改

參考官方說明

** 如果在 cli 底下運行出現 PHP Fatal error: Class ‘swoole_http_server’ not found 那就是改錯 php.ini 了。記得要改 /etc/php/7.2/cli/php.ini。

接著在 extension 的部分新加入 swoole.so,swoole.so 可以明確指定路徑,會在安裝好後的 modules 內

存檔後重啟 apache

檢查 swoole 是否出現在模組列表

並使用 phpinfo() 可以查看到 swoole 。

架設完畢後,我們可以寫簡單測試來看看是否正常運作

  1. php – swoole – 架設 websocket 簡單範例
  2. php – swoole – 架設 websocket 進階範例
  3. PHP – Swoole – HTTPS/SSL 啟用設定方式

VMware – Linux – 外部使用 FTP 傳送檔案到虛擬伺服器

例如我在 Windows 寫 PHP,存檔後會傳送到 VMware 的虛擬機 CentOs 的 Server (算是我的 Linux 測試環靜),存檔傳輸希望透過 FTP 傳送。

XAMPP 安裝的 FTP 套件是 ProFTPD,打開使用者的設定檔路徑『/opt/lampp/etc/proftpd.conf』,可以看到下面的內容

所以從設定檔得到 FTP 資訊是

  • host: 192.168.1.103:21 (IP 由虛擬機分配到的)
  • user: daemin
  • password: xampp

如果要讓使用者可以透過 FTP 修改檔案路徑權限,那就

參考關於 Limit 設定的官方說明

改好以後,我們確實可以從實體接透過 FTP 登入虛擬機的路徑 /opt/lampp/htdocs,但這時候不具有任何權限。所以我們要記得修改 /opt/lampp/htdocs 的權限。因為我是拿來自己連線 (架在 VMware 當作開發環境),所以帳號密碼我使用原本的,沒再做修改。但是,建議建立一個 FTP 專用的用戶,並指定該 FTP 使用者有一個專屬的家目錄。

建立使用者群組

建立使用者目錄、用戶、密碼

修改完記得重啟 ProFTPD,或是整個 xampp 重啟也可以。

註解 1 ) 如果要更換 ProFTPD 的密碼,有2種方式,一種是直接修改文件,如前往密碼產生器 http://www.kxs.net/support/htaccess_pw.html ,輸入預設帳號 daemon、自訂密碼,按下送出後會得到加密過後的密文,把它替換掉即可。第二種是裝好 XAMPP 時就先做 XAMPP 安全設定