[Python] Django – “no module named django.core.management”

利用 django-admin.py 建立一個新專案後,準備要在專案目錄底下用 manage.py 開始做事情時,出現了詭異的錯誤訊息:

$ python manage.py
Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

 

錯誤訊息中的大意是找不到 django.core.management 這個 module,利用下面的指令檢查一下 module source:

$ python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
/usr/lib/python2.7/site-packages

Read more “[Python] Django – “no module named django.core.management””

[Git] Unable to find remote helper for ‘https’

當使用 git 以 HTTPS 連線 clone repository 時出現 …

Unable to find remote helper for ‘https’

 

可能是在安裝 git 時因為缺少 libcurl 套件所導致

但是環境沒有 libcurl 時一樣可以安裝,只是會不能走 HTTPS 通道而已

 

若要修復這個問題,只需安裝 libcurl 後重新編譯安裝 git 就好:

# 系統為Ubuntu/Debain時,執行以下指令
apt-get install -y libcurl4-openssl-dev 

# 系統為CentOS/RedHat/Fedora時,執行以下指令
yum install -y libcurl-devel.x86_64

# 回到 git 原始碼目錄重新編譯並安裝 git
cd ~/git-2.8.16
./configure
make
make install

Reference: linux – “Unable to find remote helper for ‘https'” during git clone – Stack Overflow

[Ubuntu] 安裝 Apache HTTP Server 2.4 + PHP 7.1 + PHP-FPM

操作環境:
OS: Ubuntu Server 16.04.3 LTS amd64
Apache Version: 2.4.27
PHP Version: 7.1.8

 

Step 1. 更新 APT Source,取得最新版套件資訊

# 安裝software-properties-common (已安裝者可跳過此步驟)
sudo apt-get install -y software-properties-common

# 加入 Apache PPA
sudo add-apt-repository -y ppa:ondrej/apache2

# 加入 PHP PPA
sudo add-apt-repository -y ppa:ondrej/php

# 更新套件清單
sudo apt-get update

Read more “[Ubuntu] 安裝 Apache HTTP Server 2.4 + PHP 7.1 + PHP-FPM”

[PHP] Failed loading php_xdebug.dll

試用 PHPStorm 要設定 PHP Interpreter 時總是偵測不到 Xdebug

下 CLI 時發現載入發生錯誤

Calos@localhost:~$ php -i | grep xdebug
Failed loading C:/Bitnami/wampstack-7.0.7-0/php/ext/php_xdebug.dll

 

WAMP 懶人包貌似沒裝好

懶得重新安裝,從 Stack Overflow 爬到了 Xdebug 官方有線上分析工具

可以幫忙進行 Xdebug 的除錯,並提供修正方法

連結: https://xdebug.org/wizard.php

 

使用方法很簡單

只需要在 CLI 下執行 php -i 將輸出的 PHP Information 貼即可

 

以此圖為例

網站直接提供了對應到 PHP 7.0.7 的 Xdebug extension DLL 檔

也會告知你應該放在哪個目錄下, php.ini 要做哪些修正

照著做後重新啟動 service,就解決了

 

Reference:

  1. Stack Overflow: XDebug not loading on Windows 7 64 bit PHP 5.4
  2. Xdebug: Support; Tailored Installation Instructions

[PHP] 強制清除所有session

透過調整以下三種參數去清除不太即時,且還要改回設定

  • session.gc_probability
  • session.gc_divisor
  • session.gc_maxlifetime

 

Session預設是以檔案的形式存放在檔案系統中

透過刪除Session File也可以達到效果,且非常即時

缺點是無差別地圖砲,Server上所有網站的session都會被清掉

至於檔案是存放在/var/lib/php5

root@localhost [/var/lib/php5] [15:09] ls
total 148
drwxr-xr-x 6 root     root        55 Mar 18  2016 modules
-rw------- 1 www-data www-data     0 Jan 11 15:03 sess_0ds3e4m3r7lgjooltl9a3l55c5
-rw------- 1 www-data www-data     0 Jan 11 15:05 sess_0pdn79vvlmk49pocsog0lm1s04
-rw------- 1 www-data www-data    21 Jan 11 14:52 sess_181m0vk41kg4jpbptqqkomvu45
-rw------- 1 www-data www-data     0 Jan 11 15:03 sess_22hv9nrcie1dgklni03ici5rg1
-rw------- 1 www-data www-data     0 Jan 11 15:07 sess_2jf0i4ld55pvov4d24s103rjh3
-rw------- 1 www-data www-data    21 Jan 11 14:50 sess_2u8fsfnkp9a1fanfa7qnemlpf5
-rw------- 1 www-data www-data     0 Jan 11 15:04 sess_43511pnkfu8vmmjk5uk5fa53f4
-rw------- 1 www-data www-data    21 Jan 11 14:45 sess_45a6khgkcq4irmvsg43ok8k766
-rw------- 1 www-data www-data   593 Jan 11 15:05 sess_4tpqknfnmt5k8mqq6g0ompmda5
-rw------- 1 www-data www-data     0 Jan 11 15:05 sess_6kdp8fepotp0v1krkv41dcqeu0
-rw------- 1 www-data www-data   512 Jan 11 14:52 sess_78h12laa6erhi4gsfa3l4s0h06
-rw------- 1 www-data www-data   488 Jan 11 15:07 sess_7u31csrpr889ubarhitom72ij6
-rw------- 1 www-data www-data    21 Jan 11 14:50 sess_8f2s5i1fb6v59t4rb0eenet682
-rw------- 1 www-data www-data     0 Jan 11 15:04 sess_8m5mov1o5mkjt7vuf0td0ilv53
(以下簡略...)

 

其中有個modules目錄是存放一些PHP的元件

記得不要手誤去刪到

刪掉所有Session Files

root@locahost [/var/lib/php5] [15:09] rm -f sess_*
root@locahost [/var/lib/php5] [15:09] ls
total 1
drwxr-xr-x 6 root     root        55 Mar 18  2016 modules

 

重整網站後就會發現session全部都刷新了