網頁

2016年12月23日 星期五

使用henplus匯出資料庫資料

使用dump-out這個指令,不過下這指令前要先設定auto-commit為on

先設使用底下指令設定auto-commit為on
set-session-property auto-commit  on

使用方式如下:
usage: dump-out <filename> <tablename>

所以可以這樣下
dump-out xxx.sql table_name

參考網址:
http://henplus.sourceforge.net/

2016年11月24日 星期四

如何確認目前使用的php.ini位置

年紀大了真的要做記錄,mac上的php更新太多,有時都搞不清楚是用哪個,最快的方式是直接在php檔上寫入,再直接看路徑。

<?php $inipath = php_ini_loaded_file();
echo $inipath;

其實主要是想改上傳檔案大小,這邊再記錄一下更動php上傳檔案的大小

參考網址:
How to know which php.ini is used?
更動php上傳檔案的大小

2016年6月30日 星期四

ASP.NET HTTP error 500.21

新接個案子,來試試.net。拿到案子原本的程式後,好不容易弄出個deploy檔,匯入後一直回應"HTTP 錯誤 500.21 - Internal Server Error ",看不出來哪有問題,該裝都裝了,看了2012-08-06 置頂文章 【ASP.NET】HTTP 錯誤 500.21 - Internal Server Error 錯誤碼0x8007000d這篇後,使用wpilauncher.exe重裝"iis:.NET擴充性4.5"及"IIS: ASP.NET 4.5",重開機後就ok了

這邊記錄一下 =__=


參考網址:
2012-08-06 置頂文章 【ASP.NET】HTTP 錯誤 500.21 - Internal Server Error 錯誤碼0x8007000d

2016年5月24日 星期二

修正laravel中Prepared statement needs to be re-prepared

最近一個案子將對方的整個DB匯出,重新匯入自己的DB後,啟動網站一直出現底下訊息
General error: 1615 Prepared statement needs to be re-prepared

看起來跟msyql本身的設定有關,在.my.cnf下加入底下設定,重新啟動即可

table_open_cache_instances=2 #http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_table_open_cache_instances
table_open_cache=16384       #http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_table_open_cache
table_definition_cache=16384 #http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_table_definition_cache
tmp_table_size=64M           #http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_tmp_table_size
join_buffer_size=512k        #http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_join_buffer_size

參考網址:
http://bugs.mysql.com/bug.php?id=42041
The Abstracts of My Brain
MySQL優化(mysql ERROR 1040 (00000): Too many connections)

2016年5月5日 星期四

iOS APP要求送審要能支援IPv6

發現iOS要求送審要能支援IPv6 @@

https://developer.apple.com/news/?id=05042016a

2016年4月26日 星期二

CSS學習筆記-控制斷行

最近遇到一個在<a>中的內容要斷行的需求,印象中以前是不行的,查了下才知道,其實可以針對擺<p>、<div>或<li>下的<a>,對其內容斷行,<p>、<div>或<li>加入word-break: break-all即可,如下設定:


<p style="word-break: break-all;"><a href="http://www.google.com">Google</a><p>

參考網址:
CSS: Line Wrap Tutorial
CSS 語法,文字換行,強迫不換行。

2016年4月24日 星期日

FB Graph API呼叫限制

記錄一下,目前FB中每個應用程式配額為在任何指定的 60 分鐘內,每一用戶有 200 次 API 呼叫。

參考網址:
限制 Graph API 速率

2016年4月14日 星期四

在CentOS 6安裝Requests及openpyxl 2.4 模組(Python 2.6.x)

最近突然想學swift及python,正好想做個小功能來玩玩,因為需要用到網路及Excel的功能,網路功能在python本身是有很多module可用,如下


不過想用方便點的,所以安裝requests模組,官網是Python Module - Requests

#安裝requests ref: http://docs.python-requests.org/en/v1.0.0/community/out-there/ 
$ yum install python-requests
oaded plugins: fastestmirror, replace
Setting up Install Process
Determining fastest mirrors
epel/metalink                                                                | 3.9 kB     00:00
 * base: centos.cs.nctu.edu.tw
 * epel: ftp.cuhk.edu.hk
 * extras: centos.cs.nctu.edu.tw
 * updates: centos.cs.nctu.edu.tw
 * webtatic: sp.repo.webtatic.com
base                                                                         | 3.7 kB     00:00
dag                                                                          | 1.9 kB     00:00
epel                                                                         | 4.3 kB     00:00
epel/primary_db                                                              | 5.9 MB     00:01
extras                                                                       | 3.4 kB     00:00
extras/primary_db                                                            |  37 kB     00:00
kbs-CentOS-Misc                                                              | 1.9 kB     00:00
updates                                                                      | 3.4 kB     00:00
updates/primary_db                                                           | 4.6 MB     00:00
webtatic                                                                     | 3.6 kB     00:00
webtatic/primary_db                                                          | 191 kB     00:00
Resolving Dependencies
--> Running transaction check
---> Package python-requests.noarch 0:2.6.0-3.el6 will be installed
--> Processing Dependency: python-urllib3 >= 1.10.2-1 for package: python-requests-2.6.0-3.el6.noarch
............
............
Dependencies Resolved

====================================================================================================
 Package                                  Arch        Version                     Repository   Size
====================================================================================================
Installing:
 python-requests                          noarch      2.6.0-3.el6                 base         95 k
Installing for dependencies:
 python-backports                         x86_64      1.0-5.el6                   base        5.5 k
 python-backports-ssl_match_hostname      noarch      3.4.0.2-4.el6.centos        extras       13 k
 python-chardet                           noarch      2.2.1-1.el6                 base        230 k
 python-six                               noarch      1.9.0-2.el6                 base         28 k
 python-urllib3                           noarch      1.10.2-1.el6                base        101 k

Transaction Summary
====================================================================================================
Install       6 Package(s)

Total download size: 472 k
Installed size: 1.9 M
Is this ok [y/N]: y
............
............
Complete!
這樣就完成了。

Excel的話則是選openpyxl,不過這個套件只支援Excel 2007以後的文件,也要注意版本,如openpyxl 1.x支援Excel 2007,但openpyxl 2.4.0是支援Excel 2010,以及Python至少要2.6以後的版本。

先使用下列指令確認Python版本
$ python -V
Python 2.6.6

下載setuptools(若沒安裝,在安裝openpyxl會出現找不到setuptools套件的訊息)
$ wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz
$ tar -xvf setuptools-1.4.2.tar.gz
$ cd setuptools-1.4.2
$ python setup.py install #安裝動作必須是root權限

再來就可以安裝openpyxl 2.4.0
$ wget https://pypi.python.org/packages/source/o/openpyxl/openpyxl-2.4.0-a1.tar.gz
$ tar -xvf openpyxl-2.4.0-a1.tar.gz
$ cd openpyxl-2.4.0-a1
$ python setup.py install #安裝動作必須是root權限

這樣兩個都可以用了

參考網址:
Python Network Programming
Python Module - Requests
openpyxl 2.4.0-a1
How To Set Up Python 2.7.6 and 3.3.3 on CentOS 6.4

2016年3月18日 星期五

WP4.2移機安裝問題:Unknow collation: 'utf8mb4_unicode_ci'

一如往常的想將在電腦弄好的wp網站放上server,放入資料庫資料時卻發現回應如下圖

仔細看了下:Unknow collation: 'utf8mb4_unicode_ci'。覺得很怪,以前都是用utf8_unicode_ci,查了下資料,發現The utf8mb4 Upgrade其中提到

In WordPress 4.2, we’re upgrading tables to utf8mb4, when we can. Your site will only upgrade when the following conditions are met:
  • You’re currently using the utf8 character set.
  • Your MySQL server is version 5.5.3 or higher (including all 10.x versions of MariaDB).
  • Your MySQL client libraries are version 5.5.3 or higher. If you’re using mysqlnd, 5.0.9 or higher.
查了下自己的mysql server版本才5.1.x,看來得自行重新安裝一次了。

2016年3月17日 星期四

MariaDB中發生Cannot load from mysql.proc. The table is probably corrupted

最近改使用JetBrain的DataGrip試試,但一直發生"Cannot load from mysql.proc. The table is probably corrupted",以致於無法載入table,但其他都正常。查了下發現官網也有呈述這類問題,看起來跟mysql的版本有關,只要升級後就可以了,如下圖:

取自:MySQL to MariaDB migration: handling privilege table differences when using mysqldump

所以執行底下指令
$ mysql_upgrade --force -u root -p
Enter password:
MySQL upgrade detected
Phase 1/6: Checking and upgrading mysql database
Processing databases
mysql
mysql.column_stats                                 OK
mysql.columns_priv                                 OK
mysql.db                                           OK
mysql.event                                        OK
mysql.func                                         OK
mysql.gtid_slave_pos                               OK
mysql.help_category                                OK
mysql.help_keyword                                 OK
#.......忽略
Phase 6/6: Running 'FLUSH PRIVILEGES'
OK

看到回應OK後再試試就沒問題了

參考網址:
MySQL to MariaDB migration: handling privilege table differences when using mysqldump

Mac上使用HomeBrew安裝MariaDB

大致步驟是
  1. 備份所有資料,若使用者過多應備份使用者資訊
  2. 使用HomeBrew安裝MariaDB
執行
$ mysqldump -uroot -p --all-databases --flush-logs --master-data=2 > /Users/alvin/all_databases.sql
Enter password: 
mysqldump: Error: Binlogging on server not active

出現"Binlogging on server not active"的Error,查了下Google,看了mysqldump: Error: Binlogging on server not active才知道少設定了log-bin,要修改my.cnf,印象中我的是直接下載mysql,在使用者資料夾中會存在個.my.cnf直接修改即可。
$ vim ~/.my.cnf
#加入
log-bin=mysql-bin
#重啟mysql server
$ /usr/local/mysql/support-files/mysql.server restart
#再dump一次
$ mysqldump -uroot -p --all-databases --flush-logs --master-data=2 > /Users/alvin/all_databases.sql
這樣就備份好了


安裝好後,針對.my.cnf要確認裡頭設定log-error
$ vim ~/.my.cnf
log-error=/tmp/mysql.log

再執行底下這行,回應SUCCESS就ok了
$ mysql.server start
Starting MySQL
. SUCCESS!

參考網址:
Installing MariaDB 10.0.10 on Mac OS X with Homebrew
OSX How To: Uninstall native MySQL and install MariaDB via Homebrew
mysqldump: Error: Binlogging on server not active
mysqld_safe

2016年3月14日 星期一

centos 6中設SSL加密Apache server

之前在Mac上設置了SSL加密Apache server:Mac學習筆記-開啟HTTPS,這陣子正好也要在自己運行中的Cent OS主機上設置,決定如法泡製,不過卻一直不成功,後來發現主要兩個問題
  1. SELinux設定問題
  2. 防火牆設定忘了開(畢竟是運行中的主機)

第一個問題是Cent OS 6預設就是開啟的

以上轉貼自在 CentOS 設置一個 SSL 加密的網頁伺服器

很多人是都關閉它可以省掉很多權限運行上的問題,很多設定上的看不出的錯誤都是因這個而發生,關閉是比較輕鬆,不過我沒關閉,所以需要注意這類的問題。

第二個問題就不特別說了,只要有防火牆設定都要注意。

底下就將整個過程都記錄下來(轉自在 CentOS 設置一個 SSL 加密的網頁伺服器

$>yum install mod_ssl openssl #安裝ssl套件

$>openssl genrsa -out ca.key 2048 #產生私鑰
$>openssl req -new -key ca.key -out ca.csr #產生 CSR
$>openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt #產生自我簽署的金鑰

#複製檔案至正確位置
$>cp ca.crt /etc/pki/tls/certs
$>cp ca.key /etc/pki/tls/private/ca.key
$>cp ca.csr /etc/pki/tls/private/ca.csr

#假如你遷移了這些檔案而不是複製它們,你可以用以下的指命來矯正這些檔案的 SELinux 脈絡
$>restorecon -RvF /etc/pki
$>vi /etc/httpd/conf.d/ssl.conf

#找到SSLCertificateFile 改成 /etc/pki/tls/certs/ca.crt
SSLCertificateFile /etc/pki/tls/certs/ca.crt

#找到SSLCertificateKeyFile 改成 /etc/pki/tls/private/ca.key
SSLCertificateKeyFile /etc/pki/tls/private/ca.key

#重啟http server
$>service httpd restart


參考網址:
在 CentOS 設置一個 SSL 加密的網頁伺服器
CentOS Apache使用SSL

2016年1月23日 星期六

數字限定4個字,未滿4個字數時前面要加0(使用PHP)

數字實際使用在流水號時,常在呈現時為了好看,要統一字數在前頭加上0,在PHP有個方便的函式可用:str_pad。

一般使用如下:
$num = 1;
echo str_pad($num, 4, "0", STR_PAD_LEFT);

//==> 0001

這函式其實主要是針對字串限定字數若不到字數要加字串在前或後,如下:
$str = 'Alvin';
echo str_pad($str, 10);

//==> 'Alvin     '

$str = 'Alvin';
echo str_pad($str, 10, "_", STR_PAD_BOTH)

//==> '__Alvin___'

參考網址:
Formatting a number with leading zeros in PHP
str_pad

收藏兩個不錯的script: monitor及wget十種方式

收藏兩個不錯的script

1. http://www.tecmint.com/linux-server-health-monitoring-script/
可以monitor主機的狀況。

2. http://www.tecmint.com/10-wget-command-examples-in-linux/
常用到的wget的十種方式。我現在在才知道wget可以續傳http協定的檔案,可以用ftp,也可以背景下載 @@

稍微記錄一下(轉自http://www.tecmint.com/10-wget-command-examples-in-linux/)

//下載wget-1.5.3.tar.gz 更名為wget.zip
$ wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

//續傳
$ wget -c http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso

//ftp with username
$ wget --ftp-user=narad --ftp-password=password ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso

//http with username
$ wget --http-user=narad --http-password=password http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso

//背景執行
$ wget -b /wget/log.txt ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso

2016年1月20日 星期三

html文字設定高度後,要水平置中

html文字的排版,在CSS設定了高度(height)後,希望它能在中央,但用了text-align或是vertical-align都無效,看別的官網半天,才知道要用的應該是line-height,只要用了後,自然就會在中央了。

這邊筆記一下