获取源码并配置运行
ourjs可以使用node.js的npm包管理模块获取源码
npm install ourjs,运行完成后当前目录会有node_modules/ourjs,复制ourjs到web目录即可
node src/ourjs.js config.newspaper.js,运行ourjs模板,然后访问http://localhost:8052即可
注册管理员账户
初次运行时有默认账户guest/123456,可以再注册一个admin账户,并且注册admin账户之前最好更改一下密钥
vi config.newspaper.js
CRYPTOKEY : '!@#$qwer4rfv%TGB',修改这个默认密钥值,GENERAL_CONFIG
然后注册admin账户,可以删除guest账户文件
rm -f data/modules/user/53dddf9c22b1d9980946164f
登录admin账户后可以进入管理后台
/admin/data/article/select,文章管理
/admin/data/user/select,用户管理
/updatecache,清除缓存
详细配置
1,将ourjs的代码和数据分开,ourjs代码可以放入svn并进行定制修改,数据不必与svn同步而且分开后方便定时备份
vi config.newspaper.js
dataModelsDir: './data/modules',这是文章和用户数据目录,GENERAL_CONFIG
countFolder: './data/counts',这是文章的用户点击数据
schemaFolder: './data/schema',这是文章、用户、回复的模式信息
数据目录可以统一修改至/soft/ourjsdata目录内,方便定时备份
dataAdapter: 'fileAdapter',还可以选择mongoAdapter或redisAdapter,待研究
var debug = true;开启调试模式,方便ourjs/web/newspaper里的tmpl文件和part文件修改后刷新即生效
2,配置redis缓存,yum install redis安装,vi /etc/redis.conf配置,redis-server /etc/redis.conf运行
var REDIS_CONFIG = {
port : 6379
, host : '',改为127.0.0.1即可使用redis缓存
3,自定义分类和关键词,分别对应阅读和交流下的分类
修改CATEGORIES和KEYWORDS即可
Nginx配置
/etc/nginx/nginx.conf
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 10240;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
charset utf-8;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
keepalive_timeout 65;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain text/html text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
client_header_buffer_size 8k;
client_max_body_size 8m;
client_body_buffer_size 256k;
proxy_connect_timeout 30;
proxy_read_timeout 10;
proxy_send_timeout 10;
proxy_buffer_size 256k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 512k;
proxy_temp_file_write_size 512k;
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=one:8m max_size=3000m inactive=600m;
proxy_temp_path /var/tmp;
server_tokens off;
upstream ourjs {
server 127.0.0.1:8055;
keepalive 64;
}
ssi on;
ssi_silent_errors on;
#ssi_types text/html;
include /etc/nginx/conf.d/*.conf;
}
/etc/nginx/conf.d/newspaper.conf
server {
listen 80;
server_name xlongwei.com www.xlongwei.com;
access_log /var/log/nginx/newspaper.access.log main;
location ~ ^/(img/|js/|css/|favicon.ico) {
root /usr/local/ourjs/web/newspaper;
access_log off;
expires max;
}
location /uploads/ {
alias /soft/uploads/;
}
location ~ .*.(svn|git|cvs) {
deny all;
}
location ~ .*.(svn|git|cvs) {
deny all;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
proxy_cache one;
proxy_cache_key sfs$request_uri$scheme;
proxy_pass http://ourjs;
}
}