2021年9月27日 星期一

(PHP-參) php.ini 翻譯與設定

php.ini 的設定
 
每次剛灌完xampp通常會這麼習慣設定:
 
    修改 httpd.conf
    DocumentRoot "C:/xampp/htdocs" 改為    DocumentRoot "C:/xampp/htdocs/www"
    習慣用www包起來所寫的專案

    若有固定IP要開放伺服器外連
    修改httpd-xampp.conf 
    <LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
    #Order deny,allow
    Allow from all
    #Deny from all
    #Allow from ::1 127.0.0.0/8
    #fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
    #fe80::/10 169.254.0.0/16#ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
    </LocationMatch>

    允許所有人使用
    修改php.ini (PHP 7 適用)
    short_open_tag = On
    open_basedir = 請指定
    max_execution_time = 60; 每個腳本的最大執行時間, 按秒計.
    max_input_time = 60 ; 每個腳本的最大讀取資料時間, 按秒計.
    memory_limit = 800M; 一個腳本可使用記憶體的最大值
    display_errors = On 遇到 PHP 語法解析錯誤,會顯示錯誤訊息。建議正式環境改為 Off
    post_max_size = 200M
    default_charset = "UTF-8"
    max_input_vars = 100000 指定每次傳送最大的表單數量,如多少比筆<input type="text"> 或註解掉
    upload_max_filesize = 200M 允許上傳檔案的最大值.
    date.timezone = Asia/Taipei

2021年9月25日 星期六

(Firefox) 搞死 '愈跑愈慢' 的亂搞!!~

Firefox 簡單降低記憶體用量
 
  • 在「篩選器」輸入「config.trim_on_minimize」來搜索這個值。
 
如果找不到,就用滑鼠右鍵點擊空白處,選【新增】→【真假值】,增加一個「config.trim_on_minimize」,並將其設定為「true」。重新打開Firefox,以後縮小瀏覽器時就會自動釋放大量記憶體囉!
 
  • 搜尋 dom.ipc.plugins.enabled ,並把 dom.ipc.plugins.enabled開頭的五個項目全部設為false
    如果只有一個,就要自己新增其他四個(真假值)
 
dom.ipc.plugins.enabled
dom.ipc.plugins.enabled.npctrl.dll
dom.ipc.plugins.enabled.npqtplugin.dll
dom.ipc.plugins.enabled.npswf32.dll
dom.ipc.plugins.enabled.nptest.dll
 
  • FireFox23之後多加的設定
「click_to_play」: 在下面過濾出的偏好設定項目「plugins.click_to_play」讓設定值變成「true
 
點選「附加元件」,把Shockwave Flash從總是啟用改成「啟用時詢問」
 
------- 以下部份 請自行斟酌. 酌量地搞.... --------
browser.cache.disk.enable (是否啟用磁碟快取)
browser.cache.memory.enable (是否啟用記憶體快取)
browser.cache.memory.capacity (記憶體快取的使用量)
將值設為你想要的大小,單位為 KB,若要設 512MB 則是 524288,設 -1 表示 Firefox 自行決定,4G記憶體使用者建議設為30720
browser.cache.disk.capacity (記憶體快取的總容量)
browser.cache.memory.max_entry_size 設為 1536 (1.5M), 單筆資料使用記憶體的最大大小
browser.cache.memory.max_entry_size (超過browser.cache.memory.capacity定義的總量的90%的記錄將不會被緩存)

2021年9月14日 星期二

(Xampp) 密碼問題. 無法登入 MySQL 的幾種解法

==============================================
mysql ERROR 1045 (28000): 錯誤解決辦法
 
windows下,以上兩個錯誤的解決方法
 
1) 開啟my.ini
2) 搜尋mysqld關鍵字. 在mysqld下面新增 skip-grant-tables,儲存退出。
(ps: 若提示不讓儲存時,可以將該檔案剪下到桌面,更改儲存後再複製到mySQL目錄下)
3) [開始按鈕+R],開啟執行對話方塊,輸入"services.msc",開啟服務視窗
4) 重啟MySQL服務
5) 執行cmd,輸入mysql -u root -p就可以不用密碼登入了,出現password: 的時候直接回車可以進入。
6) 進入mysql資料庫:
mysql> use mysql;Database changed
7) 給root使用者設定新密碼:mysql> update user set password=password("123456") where user="root";
    提示:Query OK, 1 rows affected (0.04 sec)Rows matched: 1 Changed: 1 Warnings: 0
8) .重新整理資料庫mysql> flush privileges;
    提示:Query OK, 0 rows affected (0.01 sec)
9) 退出mysql:mysql> exit
    提示:Bye
10) 改好之後,再修改一下my.ini這個檔案,刪除剛才加入的"skip-grant-tables",儲存退出. 再重啟mysql服務就可以了。
 
=========================
#1045 無法登入 MySQL 伺服器
 
mysql提供一種空密碼登入的機制,只是預設是關閉的,忘記密碼時開啟修改一下就可以了。
1) 修改/phpmyadmin/libraries/config.default.php 檔案.
找到下面兩行
 
$cfg['Servers'][$i]['nopassword'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
 
將兩個false改為true
同時設定 cfg[′Servers′][i]['password'] = "。就可以了。
 
2)  如果此時仍然不能登陸,嘗試清除一下cookie。或者隨便輸入幾個字元。
3) 登陸成功後及時修改密碼
 
=========================
1.停止mysql資料庫
/etc/init.d/mysqld stop
(或者直接 kill -9 [PID] 殺程序!)
2.執行如下命令
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
 
3.使用root登入mysql資料庫
mysql -u root mysql
 
4.更新root密碼
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
 
最新版MySQL請採用:
mysql> UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root';
 
5.重新整理許可權
mysql> FLUSH PRIVILEGES;
 
6.退出mysql
mysql> quit
 
7.重新啟動mysql
/etc/init.d/mysqld restart
 
8.使用root使用者重新登入mysql
mysql -uroot -p Enter password: <輸入新設的密碼newpassword>
 
=================================
XAMPP下重置 mysql密碼
如果 mysql 忘記密碼, 可以通過以下步驟重置mysql密碼
 
1. 停止mysql
 
2. 打開cmd,切換目錄到 /xampp/mysql/bin, 運行:
>mysqld --skip-grant-tables
(該命令是跳過權限檢查,直接啟動mysql服務; 請保持這個窗口別關閉, 另開一個命令窗口)
 
3. 打開cmd,同樣切換目錄到 /xampp/mysql/bin,運行
>mysql –u root (該命令是用root登錄到mysql資料庫)
 
4. 修改root的密碼
>use mysql
>update user set password=PASSWORD("新密碼") where user="root";
>flush privileges
 
完成

(Xampp) 外機連入-1

1.開啟httpd-xampp.conf(/xampp/apache/conf/extra/httpd-xampp.conf)
找到以下內容
 
New XAMPP security concept
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
Order deny,allow
Deny from all
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
 
將Deny from all這一行註釋掉,即
#Deny from all
 
注:需要重啟apache (/opt/lampp/lampp restart)
 
2.編輯httpd.conf (/opt/lampp/etc/httpd.conf),
找到以下內容:
 
<Directory />
   AllowOverride none
   Require all denied
</Directory>
 
改為:
 
<Directory />
   # AllowOverride none
   # Require all denied
   AllowOverride All
   Require all granted
</Directory>
 
這樣就可以了

2021年9月7日 星期二

(PHP) Filesystem 函數總表

PHP 5 Filesystem 函數總表 (取自中國 菜鳥教程)
 
函數 描述
basename() 返迴路徑中的文件名部分。
chgrp() 改變文件組。
chmod() 改變文件模式。
chown() 改變文件所有者。
clearstatcache() 清除文件狀態緩存。
copy() 複製文件。
delete() 參見 unlink() 或 unset()
dirname() 返迴路徑中的目錄名稱部分。
disk_free_space() 返回目錄的可用空間。
disk_total_space() 返回一個目錄的磁盤總容量。
diskfreespace() disk_free_space() 的別名。
fclose() 關閉打開的文件。
feof() 測試文件指針是否到了文件末尾。
fflush() 向打開的文件刷新緩衝輸出。
fgetc() 從打開的文件中返回字符。
fgetcsv() 從打開的文件中解析一行,校驗 CSV 字段。
fgets() 從打開的文件中返回一行。
fgetss() 從打開的文件中返回一行,並過濾掉 HTML 和 PHP 標籤。
file() 把文件讀入一個數組中。
file_exists() 檢查文件或目錄是否存在。
file_get_contents() 把文件讀入字符串。
file_put_contents() 把字符串寫入文件。
fileatime() 返回文件的上次訪問時間。
filectime() 返回文件的上次修改時間。
filegroup() 返回文件的組 ID。
fileinode() 返回文件的 inode 編號。
filemtime() 返回文件內容的上次修改時間。
fileowner() 返回文件的用戶 ID (所有者)。
fileperms() 返回文件的權限。
filesize() 返回文件大小。
filetype() 返回文件類型。
flock() 鎖定或釋放文件。
fnmatch() 根據指定的模式來匹配文件名或字符串。
fopen() 打開一個文件或 URL。
fpassthru() 從打開的文件中讀數據,直到文件末尾(EOF),並向輸出緩衝寫結果。
fputcsv() 把行格式化為 CSV 並寫入一個打開的文件中。
fputs() fwrite() 的別名。
fread() 讀取打開的文件。
fscanf() 根據指定的格式對輸入進行解析。
fseek() 在打開的文件中定位。
fstat() 返回關於一個打開的文件的信息。
ftell() 返回在打開文件中的當前位置。
ftruncate() 把打開文件截斷到指定的長度。
fwrite() 寫入打開的文件。
glob() 返回一個包含匹配指定模式的文件名/目錄的數組。
is_dir() 判斷文件是否是一個目錄。
is_executable() 判斷文件是否可執行。
is_file() 判斷文件是否是常規的文件。
is_link() 判斷文件是否是連接。
is_readable() 判斷文件是否可讀。
is_uploaded_file() 判斷文件是否是通過 HTTP POST 上傳的。
is_writable() 判斷文件是否可寫。
is_writeable() is_writable() 的別名。
lchgrp() 改變符號連接的組所有權。
lchown() 改變符號連接的用戶所有權。
link() 創建一個硬連接。
linkinfo() 返回有關一個硬連接的信息。
lstat() 返回關於文件或符號連接的信息。
mkdir() 創建目錄。
move_uploaded_file() 把上傳的文件移動到新位置。
parse_ini_file() 解析一個配置文件。
parse_ini_string() 解析一個配置字符串。
pathinfo() 返回關於文件路徑的信息。
pclose() 關閉由 popen() 打開的進程。
popen() 打開一個進程。
readfile() 讀取一個文件,並寫入到輸出緩衝。
readlink() 返回符號連接的目標。
realpath() 返回絕對路徑名。
realpath_cache_get() 返回高速緩存條目。
realpath_cache_size() 返回高速緩存大小。
rename() 重命名文件或目錄。
rewind() 倒回文件指針的位置。
rmdir() 刪除空的目錄。
set_file_buffer() 設置已打開文件的緩衝大小。
stat() 返回關於文件的信息。
symlink() 創建符號連接。
tempnam() 創建唯一的臨時文件。
tmpfile() 創建唯一的臨時文件。
touch() 設置文件的訪問和修改時間。
umask() 改變文件的文件權限。
unlink() 刪除文件。 
 

2021年9月5日 星期日

(Xampp) 開啟外網連入

開啟 httpd-xampp.conf 檔:
找到 Require local
 
2.4以前版本:
#在Require local前面加#號. 註釋掉 (取消只允許本地訪問)
#Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
 
2.4以後版本:
將Require local 換為 Require all granted就可以了。
 
最後重啟Apache服務
 

(Xampp) 關閉SSL_關閉 443

遭遇問題: server certificate does NOT include an ID which matches the server name
 
1) 以管理員身份啟動XAMPP控制面板,點擊Config按鈕打開 httpd.conf
註釋掉以下兩行 (約 171,539行代碼)
 
#LoadModule ssl_module modules/mod_ssl.so
#Include conf/extra/httpd-ssl.conf
 
2) 點擊右邊中間的Config,關閉"Check default port on startup"
3) 重啟XAMPP
 
==========================================================
遭遇問題: 使用設定檔案定義的控制使用者連線失敗
修改 config.inc.php
/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'root'; #預設是pma改成root
$cfg['Servers'][$i]['controlpass'] = '資料庫密碼'; #資料庫密碼
 

2021年9月2日 星期四

(不想探究) 絕對不要安裝 COMODO !

想到就氣!!~ 因為早已解除 comodo 的安裝. 不再使用, 昨天卻因為刪除 comodo 的殘餘目錄, 卻造成主機 Win7下無法順利執行 Virtual Box 的虛擬機...
 
原以為是虛擬機的檔案壞損. 於是把一個多月前的 RH9主機備份檔拿出來蓋過新檔..., 熟料還是運作不了...;
後來只好利用 Win7主機的 [系統還原] 才解決了問題....; 可惜. 已喪失掉 RH9主機上一個多月的資料.., 尤其是資料庫裡的資料...
 
這次慘痛經驗的心得是:
1) 絕對不要安裝 COMODO !! 否則電腦將後患無窮... (包括連網. 和永遠清不乾淨的系統問題..)
2) RH9 的備份方法. MySQL 的備份和資料還原, 找時間還是得學學該怎麼做才是!!...
 

(Centos-7s) 更新: 網卡名稱改回 eth0 的方法

將 CentOS 7 網卡名稱修改, 用回 Eth0 的方法:   1) # vi /etc/sysconfig/grub 內容大概是這樣:   GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release...