2014年10月13日

Eclipse SVN 安裝設定

1.下載Java JDK並安裝
http://www.oracle.com/technetwork/java/javase/downloads/index.html

2.修改系統環境變數 Path 加入 C:\Program Files (x86)\Java\jdk1.8.0_20\bin

3.下載Eclipse https://www.eclipse.org/downloads/
選擇 Eclipse IDE for Java Developers 那一個.
解壓至D:\eclipse.java\eclipse
建立D:\eclipse.java\workspace
Eclipse應已可執行.

4. 下載Subclipse
於Eclipse->Help->Eclipse Marketplace
找到Subclipse並安裝,安裝完需重新啟動Eclipse.

設定Subclipse
4.1將整個專案上傳
 於Java按右鍵,選擇Team->Share
接著選擇要上傳到Server上的名稱...

設定忽略的目錄
於專案按右鍵,Team->Set Property...
Property name:選擇svn:ignore
Property content:

target
.project
.setting
.classpath

4.2下載專案
於SVN Repository Exploring選擇要下載的專案按右鍵,選擇Checkout...
之後輸入要下載至本地的專案名稱(預設為相同名稱)...


2014年8月13日

Apache,PHP調校設定



編輯 /etc/apache2/apache2.conf or httpd.conf
加上 EnableSendfile Off
伺服器沒支援的話,要關掉,否則無法正常顯示圖片!

編輯 /etc/apache2/apache2.conf
加上 ServerName 127.0.0.1



編輯C:\WINDOWS\php.ini

打開output_buffering
output_buffering = Off -> output_buffering = On

打開PDO for mysql
extension=php_pdo_mysql.dll

記憶體限制調大
memory_limit = 8M 改為 32M

設定時區
date.timezone = "Asia/Taipei"

2014年7月24日

MySQL Replication Master-Slave筆記


Master(my.cnf)192.168.1.203
server-id               = 1
log_bin                 = /var/log/mysql/mysql-bin.log

binlog_format = MIXED
要同步的DB
binlog_do_db = test
binlog_do_db = test2
innodb_flush_log_at_trx_commit=1
sync_binlog=1

mysql -u root -p
新增帳號給SLAVE同步使用
mysql>GRANT REPLICATION SLAVE ON *.* TO 'rep' IDENTIFIED BY 'pass';
or
mysql -u root -p -e "GRANT REPLICATION SLAVE ON *.* TO 'rep' IDENTIFIED BY 'pass';"
先鎖定資料庫
mysql -u root -p -e "FLUSH TABLES WITH READ LOCK;"
mysql -u root -p -e "SHOW MASTER STATUS\G;"
+------------------+----------+--------------+------------------+
| File Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000002 |      107 | test         |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
記下File與Position,等下會用到
quit

匯出要同步的那個資料庫
mysqldump -uroot -p --flush-logs --opt --master-data test > test.sql

解除鎖定

mysql -u root -p -e "UNLOCK TABLES;"

此時MASTER上的工作結束。


Slave(my.cnf)192.168.1.204

server-id               = 2

要同步的DB
replicate_wild_do_table = test.%

mysql -uroot -p -e "STOP SLAVE; RESET SLAVE;"

mysql -uroot -p -e "CHANGE MASTER TO MASTER_HOST='192.168.1.204',MASTER_USER='rep',MASTER_PASSWORD='pass',
MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=107;"

mysql -uroot -p -e "START SLAVE;"

檢視MASTER的狀態
mysql -uroot -p -e "SHOW MASTER STATUS;"
+------------------+----------+--------------+------------------+
| File|Position| Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |      107 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

檢視SLAVE的狀態
mysql -uroot -p -e "SHOW SLAVE STATUS\G;"
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.204
Master_User: rep
Master_Port: 3306
......
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

......

運作正常,此時可到MASTER上新增資料看是否立即同步至SLAVE

2014年7月21日

Windows下於tomcat內架設JavaBridge


下載tomcat可攜版,假設tomcat放在c:\tomcat下

1.設定tomcat可正常執行

設定系統環境變數
CATALINA_HOME=c:\tomcat
Path=......;%CATALINA_HOME%\lib;%CATALINA_HOME%\lib\servlet-api.jar;%CATALINA_HOME%\lib\jsp-api.jar

編輯tomcat/bin/startup.bat加入以下
set "JAVA_HOME=C:\Program Files (x86)\Java\jre7"
set "CATALINA_HOME=c:\tomcat"

2.複製JavaBridge.war至tomcat/weapps/下,移除webapps下其他目錄


tomcat會建立tomcat/webapps/JabaBridge目錄,此時JavaBridge.war可移除

從C:\tomcat\Webapps\JavaBridge\WEB-INF\lib複製JavaBridge.jar, php-servlet.jar and php-script.jar
到C:\tomcat\lib\


3.編輯web.xml加入以下

<listener><listener-class>php.java.servlet.ContextLoaderListener</listener-class></listener>
<servlet><servlet-name>PhpJavaServlet</servlet-name><servlet-class>php.java.servlet.PhpJavaServlet</servlet-class>
</servlet>
<servlet><servlet-name>PhpCGIServlet</servlet-name><servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class>
<init-param><param-name>prefer_system_php_exec</param-name><param-value>On</param-value></init-param>
<init-param><param-name>php_include_java</param-name><param-value>Off</param-value></init-param>
</servlet>
<servlet-mapping><servlet-name>PhpJavaServlet</servlet-name><url-pattern>*.phpjavabridge</url-pattern> </servlet-mapping>
<servlet-mapping><servlet-name>PhpCGIServlet</servlet-name><url-pattern>*.php</url-pattern></servlet-mapping>

4.測試

執行tomcat/bin/startup.bat來啟動tomcat

於apache下之javatest.php
require_once("http://127.0.0.1:8080/JavaBridge/java/Java.inc");
$j = new Java('java.lang.system');
echo $j->getProperty('java.version');

2014年6月30日

Codeigniter 初始設定



設定預設的Controller
application/config/route.php 
$route['default_controller'] = "welcome";

設定要自動load的library或model
application/config/autoload.php 
$autoload['helper'] = array('url');
$autoload['libraries'] = array('database','session');
$autoload['model'] = array();

設定資料庫連結
application/config/database.php

設定自已要用的常數
application/config/constants.php
define('ROOT', str_replace('/application/config/constants.php', '', str_replace('\\', '/', __FILE__)));

設定.htaccess 移除index.php(記得apache的mod_rewrite要打開)

<IfModule mod_rewrite.c>
DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
</IfModule>

2014年4月30日

Java-Bridge Windows安裝筆記(免Tomcat) 2014

*不要再找java.so或java.dll了,那已是過時的資訊



1.安裝JDK或JRE

2.取得JavaBridge.jar,php-script.jar,php-servlet.jar (JavaBridge.war解開)

3.找個地方放javabridge把JavaBridge.jar,php-script.jar,php-servlet.jar這三個檔摳過去

C:\javabridge



再來到命令列

"C:\Program Files (x86)\Java\***\bin\java" -jar "C:\javabridge\JavaBridge.jar" SERVLET:8080


Debian Java-Bridge精簡安裝(免裝Tomcat) 2014

*不要再找java.so或java.dll了,那已是過時的資訊

1.安裝php

2.下載Java JDK Linux版 並安裝 可參考 Debian安裝Java JDK記錄

3.取得JavaBridge.jar,php-script.jar,php-servlet.jar (JavaBridge.war解開)

找個地方放javabridge
mkdir -p /usr/local/javabridge
cp ./javabridge/JavaBridge.jar /usr/local/javabridge/
cp ./javabridge/php-script.jar /usr/local/javabridge/

cp ./javabridge/php-servlet.jar /usr/local/javabridge/

其他jar檔放/usr/java/packages/lib/ext(會放這邊是因為預設include目錄在這)
mkdir -p /usr/java/packages/lib/ext
cp ./javabridge/other_jar_files.jar /usr/java/packages/lib/ext/

執行JavaBridge.jar
/usr/local/jdk/bin/java -jar /usr/local/javabridge/JavaBridge.jar SERVLET:8080 &