|
ssh hjiang@pyelite.com |
|
password is hjiang |
|
sudo apache2ctl -k restart |
|
NameVirtualHost 174.127.70.248:8080 |
|
ssh -CfNg -D 8080 hjiang@pyelite.com |
|
socks host 127.0.0.1:8080 |
|
|
|
http://smallbusiness.yahoo.com/ |
|
---------------------------------------------- |
|
80端口的配置文件要在 httpd.conf 里面才行 其他端口好像就没有没有这个限制 也就是可以直接在apache.conf 里面直接include |
|
文件名空格要转义 '\ ' |
|
localhost /usr/lib/pymodules/python2.6/django |
|
vps /usr/local/lib/python2.6/dist-packages/django |
|
从远程地址下目录来 |
|
scp -r user@ip:/dir /dir |
|
从本地上传远程地址 |
|
scp -r /dir user@ip:/dir |
|
scp -r /home/jhjguxin/Desktop/djcode hjiang@174.127.70.248:/home/hjiang/jhj |
|
scp -r /etc/apache2/sites-enabled hjiang@174.127.70.248:/etc/apache2/sites-enabled |
|
DocumentRoot /home/hjiang/mysite |
|
'/var/www/djcode/blogserver/db' |
|
python /home/hjiang/mysite/manage.py runserver 0.0.0.0:8000 |
|
# 编辑settings.py文件并将数据库引擎和名称设置如下。(将数据库的路径更改为新创建的myapp目录中的一个文件。) |
|
pwd 当前目录 |
|
sudo apache2ctl -k restart |
|
DATABASE_ENGINE = 'sqlite3' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. |
|
DATABASE_NAME = '/home/hjiang/mysite/db/mydb.db' # Or path to database file if using sqlite3. |
|
DATABASE_USER = '' # Not used with sqlite3. |
|
DATABASE_PASSWORD = '' # Not used with sqlite3. |
|
DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3. |
|
DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3. |
|
|
|
|
|
hjiang@s1:/usr/lib/python-django/bin$ ls |
|
__init__.py daily_cleanup.py make-messages.py unique-messages.py |
|
compile-messages.py django-admin.py profiling |
|
|
|
|
|
'django.template.loaders.filesystem.load_template_source', |
|
'django.template.loaders.app_directories.load_template_source', |
|
'django.template.loaders.eggs.load_template_source', |
|
|
|
|
|
django/contrib |
|
__init__.py middleware.py models.py tests.py |
|
不能打开数据库文件 |
|
hjiang@s1:~/mysite$ sudo chown hjiang /home/hjiang/mysite/db |
|
hjiang@s1:~/mysite$ sudo chown hjiang /home/hjiang/mysite |
|
from django.db import connection |
|
cursor=connection.cursor() |
|
|
|
ln -s 源文件 目标文件 |
|
|
|
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间,只生成目标文件的一个镜像。 |
|
|
|
例如:ln -s /tmp/less /usr/local/bin/less |
|
|
|
/usr/share/pyshared/django/middleware/csrf.py |
|
#ln -s /var/lib/python-support/python2.6/django/contrib/csrf /var/lib/python-support/python2.6/django/middleware |
|
hjiang@s1:/var/lib/python-support/python2.6/django/contrib/csrf$ ls |
|
__init__.py middleware.py models.py tests.py |
|
__init__.pyc middleware.pyc models.pyc tests.pyc |
|
|
|
|
|
/var/lib/python-support/python2.6/django/contrib/admin |
|
/var/lib/python-support/python2.6/django/contrib/admin/media |
|
////////////// |
|
ImproperlyConfigured: Error importing middleware django.middleware.csrf: "No module named csrf" |
|
Seems it's due to django version http://stackoverflow.com/questions/2341030/no-module-named-csrf |
|
|
|
I'm currently using 1.1.2 django version |
|
|
|
(I may post enhancement issue, but is there a way to freeze django binnaries in the project in order to have a standalone & plug and play django-mumble?) |
|
|
|
David. |
|
尝试升级django版本 |
|
////////////// |
|
|
|
|
|
Linux VPS下SSH常用命令 |
|
目录操作: |
|
rm -rf mydir /*删除mydir目录*/ |
|
cd mydir /*进入mydir目录*/ |
|
cd - /*回上一级目录*/ |
|
cd .. /*回父目录,中间有空格*/ |
|
cd ~ /*回根目录*/ |
|
mv tools tool /*把tools目录改名为tool */ |
|
ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/ |
|
cp -a tool /home/vpser/www /*把tool目录下所有文件复制到www目录下 */ |
|
|
|
文件操作: |
|
rm go.tar /* 删除go.tar文件 */ |
|
find mt.cgi /* 查找文件名为mt.cgi的文件 */ |
|
df –h /* 查看磁盘剩余空间,好像没这个必要,除非你太那个了 */ |
|
|
|
解压缩: |
|
tar xvf wordpress.tar /* 解压tar格式的文件 */ |
|
tar -tvf myfile.tar /* 查看tar文件中包含的文件 */ |
|
|
|
tar cf toole.tar tool /* 把tool目录打包为toole.tar文件 */ |
|
tar cfz vpser.tar.gz tool /* 把tool目录打包且压缩为vpser.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB */ |
|
|
|
tar jcvf /var/bak/www.tar.bz2 /var/www/ /*创建.tar.bz2文件,压缩率高*/ |
|
tar xjf www.tar.bz2 /*解压tar.bz2格式*/ |
|
|
|
gzip -d ge.tar.gz /* 解压.tar.gz文件为.tar文件 */ |
|
unzip phpbb.zip /* 解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的 */ |
|
|
|
下载: |
|
wget http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz |
|
/*下载远程服务器上的文件到自己的服务器,连上传都省了,服务器不是100M就是1000M的带宽,下载一个2-3兆的MT还不是几十秒的事 */ |
|
wget -c http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz |
|
/* 继续下载上次未下载完的文件 */ |
|
|
|
转载请注明出处:VPS侦探 http://www.vpser.net |
|
|
|
进程管理: |
|
ps -aux /*ps 进程状态查询命令*/ |
|
|
|
ps命令输出字段的含义: |
|
[list] |
|
[*]USER,进程所有者的用户名。 |
|
[*]PID,进程号,可以唯一标识该进程。 |
|
[*]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。 |
|
[*]%MEM,进程使用内存的百分比。 |
|
[*]VSZ,进程使用的虚拟内存大小,以K为单位。 |
|
[*]RSS,进程占用的物理内存的总数量,以K为单位。 |
|
[*]TTY,进程相关的终端名。 |
|
[*]STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。 |
|
[*]START,进程开始运行时间。 |
|
[*]TIME,进程使用的总CPU时间。 |
|
[*]COMMAND,被执行的命令行。 |
|
[/list] |
|
|
|
ps -aux | grep nginx /*在所有进程中,查找nginx的进程*/ |
|
kill 1234 /*1234为进程ID,即ps -aux 中的PID*/ |
|
killall nginx /*killall 通过程序的名字,直接杀死所有进程,nginx为进程名*/ |
|
|
|
Vim操作: |
|
|
|
移动类的: |
|
h/j/k/l: 左/下/上/右 移一格 |
|
w : 向后词移动 (前面加数字移动多少个词) |
|
b : 向前词移动 (前面加数字移动多少个词) |
|
e : 向后移到词末 |
|
ge : 向前移到词末 |
|
$ <End> : 行末 |
|
0 <Home> : 行首 |
|
tx : 向右查找本行的x并移到那儿(大写时向左) |
|
33G : 移到文件的第33行 |
|
gg : 文件首行 |
|
G : 文件尾行 |
|
33% : 文件的33%处 |
|
H/M/L : 屏幕的首/中/尾行 |
|
zt/zz/zb : 当前行移到屏幕的首/中/底部 |
|
|
|
跳转: |
|
" : 回到跳转来的地方 |
|
CTRL-O : 跳到一个 “较老” 的地方 |
|
CTRL-I <Tab> : 则跳到一个 “较新” 的地方 |
|
|
|
查找: |
|
/ : 向下查找(后加关键字) |
|
? : 向上查找(后加关键字) |
|
n : 下一条符合的记录 |
|
|
|
编辑: |
|
i : 转换到插入模式 |
|
x : 删除当前字符 |
|
. : 重复最后一次的修改操作(同PS里ctrl+f执行滤镜) |
|
u : 撤销操作 |
|
CTRL-R : 重做 |
|
p : 将删除的字符插入到当前位置(put) |
|
|
|
退出保存: |
|
:q : 退出 |
|
:q! : 不保存退出 |
|
ZZ : 保存后退出 |
|
:e! : 放弃修改重新编辑 |
|
VPS侦探 |
|
Linux SSH远程文件/目录传输命令scp |
|
|
|
一、scp是什么? |
|
|
|
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。 |
|
二、scp有什么用? |
|
|
|
1、我们需要获得远程服务器上的某个文件,远程服务器既没有配置ftp服务器,没有开启web服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过scp命令便可轻松的达到目的。 |
|
|
|
2、我们需要将本机上的文件上传到远程服务器上,远程服务器没有开启ftp服务器或共享,无法通过常规途径上传是,只需要通过scp命令便可以轻松的达到目的。 |
|
三、scp使用方法 |
|
1、获取远程服务器上的文件 |
|
|
|
scp -P 2222 root@www.vpser.net:/root/lnmp0.4.tar.gz /home/lnmp0.4.tar.gz |
|
|
|
上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4.tar.gz 表示远程服务器上的文件,最后面的/home/lnmp0.4.tar.gz表示保存在本地上的路径和文件名。 |
|
2、获取远程服务器上的目录 |
|
|
|
scp -P 2222 -r root@www.vpser.net:/root/lnmp0.4/ /home/lnmp0.4/ |
|
|
|
上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。-r 参数表示递归复制(即复制该目录下面的文件和目录);root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4/ 表示远程服务器上的目录,最后面的/home/lnmp0.4/表示保存在本地上的路径。 |
|
3、将本地文件上传到服务器上 |
|
|
|
scp -P 2222 /home/lnmp0.4.tar.gz root@www.vpser.net:/root/lnmp0.4.tar.gz |
|
|
|
上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 /home/lnmp0.4.tar.gz表示本地上准备上传文件的路径和文件名。root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4.tar.gz 表示保存在远程服务器上目录和文件名。 |
|
4、将本地目录上传到服务器上 |
|
|
|
scp -P 2222 -r /home/lnmp0.4/ root@www.vpser.net:/root/lnmp0.4/ |
|
|
|
上 端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。-r 参数表示递归复制(即复制该目录下面的文件和目录);/home/lnmp0.4/表示准备要上传的目录,root@www.vpser.net 表示使用root用户登录远程服务器www.vpser.net,:/root/lnmp0.4/ 表示保存在远程服务器上的目录位置。 |
|
5、可能有用的几个参数 : |
|
|
|
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 . |
|
|
|
-C 使能压缩选项 . |
|
|
|
-4 强行使用 IPV4 地址 . |
|
|
|
-6 强行使用 IPV6 地址 . |
|
|
|
|
|
|
|
|
|
这时候在局域网内部,访问http://192.168.1.2:8080和http://192.168.1.2都没有问题 |
|
|
|
访问外网iphttp://100.100.100.100:8080也可以访问,但是http://100.100.100.100就一直显示it works! |
|
|
|
不知道怎么回事,后来把NameVirtualHost 192.168.1.2:80改成 NameVirtualHost *:80 |
|
|
|
即:把ip地址改成*,外网的也可以了! |
|
|
|
问题是解决了,但是原理还是不知道,留个记号! |
|
|
|
方便日后解决,也希望博友知道可以给我留言,谢谢 |
|
|
|
|
|
scp -r /home/jhjguxin/Desktop/djcode/blogserver hjiang@174.127.70.248:/home/jhjguxin/Desktop/djcode/blogserver |
|
du |