腾讯云配置启动多个node
/data/home/init.sh
增加代码
cd /data/home/www/newserver
node app.js
Nginx 配置多域名不同端口
首先需要编辑/etc/nginx/nginx.conf,在http模块中引入其他配置文件:
腾讯云的地址为:
/data/home/server/nginx-1.7/conf/vhosts
include /etc/nginx/conf.d/*.conf;
这样你就可以在/etc/nginx/conf.d文件夹中分别设置每个虚拟主机。
然后在上面的文件夹下分别新建文件/etc/nginx/conf.d/a.conf和/etc/nginx/conf.d/b.conf,当然文件名a,b随你起。
server {
listen 80;
server_name a.abc.com;
access_log /data/node/log/host.access.log main;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:3010;
proxy_redirect off;
}
}
对b.abc.com的应用只需要修改上面的server_name就可以。
端口地址修改 proxy_pass 里的端口
这样每个访问 http://a.abc.com
的请求就会被转发到相应的端口上,由各自的应用处理。
进入nginx的sbin目录 通过 ./nginx -t 命令查看配置是否出错
重启 nginx 的命令
service nginx restart
systemctl restart nginx
/usr/local/nginx/sbin/nginx -s reload
Nginx 配置https
http的端口为80,https的端口为443,这是2个不同的服务,所以需要配置2个server,同时把http的跳转到https上。SSL是腾讯云帮助页面的配置,别家的不知道一样不一样
server {
listen 80;
server_name a.abc.com;
rewrite ^(.*) https://a.abc.com$1 permanent;
}
server {
listen 443;
server_name a.abc.com;
ssl on;
ssl_certificate 1_a.abc.com_bundle.crt;
ssl_certificate_key 2_a.abc.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location /
{
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Connection "";
proxy_http_version 1.1;
proxy_pass http://127.0.0.1:3010;
}
include /data/home/server/nginx/conf/rewrite/default.conf;
access_log /data/home/log/nginx/access/default.log;
}
安装 python3
1.下载后上传到服务器
https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
/data/soft
2. 解压
tar xvf Python-3.7.0.tar.xz
3.编译安装
进入目录 cd Python-3.7.0
配置编译:./configure --prefix=/usr/python --enable-shared CFLAGS=-fPIC
4.编译:make && make install
整个过程大约5-10分钟,安装成功之后,安装目录就在/usr/python
5.创建软连接
系统中原来的python在/usr/bin/python 新的位置在 /usr/python
python3 报错
python3: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory
原因是因为python运行时没有加载到 libpython3.7m.so.1.0
这个库文件 将其复制到相应的目录就好了。
1.进入解压的目录 /data/soft/Python-3.7.0
2.拷贝文件libpython3.7m.so.1.0
3.复制到下列的文件夹
/usr/local/lib64/
/usr/lib64/
mysql 安装
默认密码的位置:root/default.pass
- 删除原有的mysql,使用命令查找
find / -name mysql
可能的显示结果如下:
/usr/share/mysql
/usr/lib64/mysql
/usr/local/mysql
/usr/local/mysql/include/mysql
/usr/local/mysql/data/mysql
/usr/local/mysql/bin/mysql
根据需求使用以下命令 依次 对配置文件进行删除
rm -rf /var/lib/mysql
http://www.cnblogs.com/ruolin/p/9279944.html
- 安装完的默认密码在
/usr/local/mysql/data/error.log
里 - 需要更改密码后才能使用
alter user user() identified by "新的密码";
- 出现
mysql: command not found
,使用命令创建连接ln -s /usr/local/mysql/bin/mysql /usr/bin
安装 php
删除老的php
安装php7.2
http://www.php.cn/linux-369447.html
Centos6.5安装 php7
https://blog.csdn.net/u010647316/article/details/56489795/
- 1.安装扩展包并更新系统内核:
yum install epel-release -y
yum update
- 2安装php依赖组件(包含Nginx依赖):
yum -y install wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel
- 3创建用户和组,并下载php安装包解压
cd /tmp
groupadd www
useradd -g www www
wget http://am1.php.net/distributions/php-7.2.1.tar.gz
tar xvf php-7.2.1.tar.gz
cd php-7.2.1
php默认页面路径:/var/www/html
查看 ini信息:php -i |grep php.ini
配置文件的位置:
/usr/local/php/etc/php.ini
/usr/local/php/etc/php-fpm.d/www.conf
/etc/httpd/conf/httpd.conf
/usr/lib64/httpd/modules/libphp7.so
/etc/my.cnf
缺少 mysqli 扩展:yum install php-mysql
重启 apache: sudo /usr/sbin/apachectl restart
Apache开机启动
参考文档
1.搜索 find / -name "httpd"
会找到启动脚本的位置 etc/rc.d/init.d/httpd
2.检查它是否在开机启动列表:
chkconfig --list | grep httpd
httpd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
3.添加删除启动
加入开机启动列表: chkconfig --add httpd
从开机列表中删除: chkconfig --del httpd
4.获取自己的运行等级 runlevel
==> N 3
5.希望它在当前的运行级别下,自动启动
chkconfig --level 3 httpd on
chkconfig --list httpd
httpd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:启用 6:关闭
service httpd status //查询运行状态:
6.手动开启关闭
service httpd start
service httpd stop
配置文件路径:/etc/httpd/conf/httpd.conf
缺少mysqli扩展 请检查PHP配置
yum install php-mysql
1.如果安装报错php70w-common conflicts with php-common-5.3.3-49.el6.x86_64
则执行 yum install php70w-mysql
2.生成mysqli.so扩展文件
- 1.找到php安装包下的ext目录下的mysqli扩展:
find / -name mysqli
==>/data/home/backup/nginx+php/php-7.0.0/include/php/ext/mysqli
- 2.找到phpize的位置:
find / -name phpize
==>/data/home/backup/nginx+php/php-7.0.0/bin/phpize
- 3然后在mysqli目录下直接运行phpize
cd /data/home/backup/nginx+php/php-7.0.0/include/php/ext/mysqli
/usr/bin/phpize
- 4 如果出现
Cannot find config.m4.
防火墙开启3306端口
find / -name iptables.up.rules
/etc/iptables.up.rules
找到文件后,添加-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
Debian 开机启动 .sh 脚本
/etc/init.d/rc.local //在里面添加运行的脚本