[精讚] [會員登入]
1618

Freebsd上php+ session 的問題

php的session在freebsd上竟然預設是關掉的?簡直沒氣死我。

分享此文連結 //n.sfs.tw/13361

分享連結 Freebsd上php+ session 的問題@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2021-10-21 22:36:59 最後編修
2019-06-29 00:11:50 By 張○○
 

自動目錄

我在Freebsd11 上裝了PHP 7.3,熟練的弄上我寫的程式,那是用Codeigniter 3的框架寫的。

但是我發現,Session 竟然抓不到?

這篇也算是札記

 

查錯

i.php

$this->session->set_userdata('s','test');
print $this->session->userdata('s'); //test 有出現

但是換另一頁 j.php,再讀取時

print $this->session->userdata('s');   //空的

發現竟然是空的?

我為了找出原因,找了快3個小時

靠....右邊走

我以為是語法有改變--->沒有。

我以為是codeigniter 設定上的問題-->不是。

我以為是session沒啟動-->有

我做了測試,發現有作用,對,就是有作用,我才沒有懷疑事實上沒有啟動。

浪費更多的時間找資料,都沒用。

明明CI3 就有寫入Session,但是怎麼都不讀出來?

最後才發現

php 的session並沒有啟動…一開始測試還有??這才是我多花時間氣死人的關鍵。

這樣範圍縮小了,就是php本身的session沒有啟動。

 

解決

編輯php.ini

把這行設定為1重啟即可

; Initialize session on request startup.
; http://php.net/session.auto-start
session.auto_start = 1

這個值我看到的時候是0,應該是預設值。

我不記得以前有這個值?

後來我發現在7.0版本上已經有這個值,而且是"0",但是沒影響什麼?

 

結論

1.  PHP7.3中 session.auto_start = 1 這樣session才會正常。

2. Freebsd安全性的設定還是比linux少很多。

3. 這個值是為了可讓各目錄分別可以決定是否讓session啟用,就是為是了做到各目錄設定的效果。

 

參考資料

[1] https://www.php.net/manual/ja/session.configuration.php#ini.session.auto-start

END

你可能感興趣的文章

[FREEBSD] AMD64 CPU 編譯核心 Freebsd8+ AMD64 CPU 編譯核心

[Freebsd] 使用者的定時排程 crontab Freebsd 下若使用者要建立自己的 crontab,方法和 root來建有一些不同。

[Freebsd] 查看dhcp客戶端 Freebsd如何能知道目前的租約及有效狀態

[FREEBSD] 使用ADSL撥接程式為何 我在家架了一台 FREEBSD 的SERVER,其中ADSL設定和操作

Freebsd 建立/刪除/修改使用者+特權使用者 Freebsd 下使用者建立、刪除、修改使用者,新增特權使用者

Freebsd 設定quota 在Freebsd使用quota以限制使用者容量

隨機好文

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

TFTP Server 安裝及使用 讓設備的網路設定檔或是韌體經由TFTP拷備出來,操作的方法

設計的工作絕不接受比價 拿買陽春麵的價格想買牛肉麵,寧願倒掉也不賣

問問題 問問題其實內涵很深,我悟了很久才懂。 有人問題的目的並不一定是想要得到答案,有時只是純粹想問問題..

[MAC] 安裝APACHE+PHP OS Darwin OpenIDMac1deAir 15.6.0 Darwin Kernel Version 15.6.