nginx webdav windows(nginx engine)
nginx webdav windows
Windows自动的iis即可解决这个问题。稍微不嫌麻烦的话可以配Nginx。不是做网站,而是用webdav,可以在其他设备上挂载的那种
nginx engine
想要搭建个人网站,就需要有单独的服务器,就在阿里云购买了台服务器,选择系统为“Ubuntu 14.04.5 LTS”,并在阿里云买了个域名(域名是为了方便记忆,否则输入ip地址访问网站很不方便),下面就使用Ubuntu系统搭建WordPress个人网站。
安装WordPress运行环境
1.安装Mysql数据库
apt update
apt upgrade
apt install mysql-server
查看mysql是否安装成功:
root@iZ2zeeg42qkecbhciml4pcZ:~# mysql --version
mysql Ver 14.14 Distrib 5.5.62, for debian-linux-gnu (x86_64) using readline 6.3
2.安装PHP
apt-get install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.2
apt install libapache2-mod-php7.2
apt install php7.2-mysql
apt install php7.2-fpm
查看php是否安装成功:
root@iZ2zeeg42qkecbhciml4pcZ:~# php -v
PHP 7.2.16-1+ubuntu14.04.1+deb.sury.org+1 (cli) (built: Mar 7 2019 20:42:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.16-1+ubuntu14.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
3.安装Nginx
install nginx
查看Nginx是否安装成功:
root@iZ2zeeg42qkecbhciml4pcZ:~# nginx -v
nginx version: nginx/1.4.6 (Ubuntu)
重启Nginx后,在浏览器中输入http://阿里云服务器外网IP地址/
service nginx stop
service nginx start
如果图片显示为下图,说明阿里云服务器自动启动了apache2的服务,apache2和nginx都使用80端口,80端口冲突。
关闭apache2的服务
重启php7.2-fpm服务和Nginx服务:
在浏览器中输入http://阿里云服务器外网IP地址/
安装WordPress及其配置
1.Mysql创建数据库和用户:
root@iZ2zeeg42qkecbhciml4pcZ:~# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 44
Server version: 5.5.62-0ubuntu0.14.04.1 (Ubuntu)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database 数据库名称 character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on 数据库名称.* to '用户名'@localhost identified by '用户密码';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
root@iZ2zeeg42qkecbhciml4pcZ:~#
2.下载WordPress并安装:
获取WordPress软件:点击此处
将下载的wordpress-5.0.3-
zh_CN.tar.gz
上传到云服务器上安装wordPress:
root@iZ2zeeg42qkecbhciml4pcZ:~# ls
wordpress-5.0.3-zh_CN.tar.gz
root@iZ2zeeg42qkecbhciml4pcZ:~# mv wordpress-5.0.3-zh_CN.tar.gz /var/www/
root@iZ2zeeg42qkecbhciml4pcZ:~# cd /var/www/
root@iZ2zeeg42qkecbhciml4pcZ:/var/www# ls
html wordpress-5.0.3-zh_CN.tar.gz
root@iZ2zeeg42qkecbhciml4pcZ:/var/www# tar -zxvf wordpress-5.0.3-zh_CN.tar.gz
......
root@iZ2zeeg42qkecbhciml4pcZ:/var/www# ls
html wordpress wordpress-5.0.3-zh_CN.tar.gz
root@iZ2zeeg42qkecbhciml4pcZ:/var/www# cd wordpress/
root@iZ2zeeg42qkecbhciml4pcZ:/var/www/wordpress# ls
index.php readme.html wp-admin wp-comments-post.php wp-content wp-includes wp-load.php wp-
mail.php
wp-signup.php xmlrpc.phplicense.txt
wp-activate.php wp-blog-header.php wp-config-sample.php wp-cron.php wp-links-opml.php wp-login.php wp-settings.php wp-trackback.phproot@iZ2zeeg42qkecbhciml4pcZ:/var/www/wordpress# mv wp-config-sample.php wp-
config.php
使用vim命令编辑wp-config.php:
vim wp-config.php
修改文件中的数据库配置信息,填写刚才创建的数据库信息:
/** WordPress数据库的名称 */
define('DB_NAME', '数据库名称');
/** MySQL数据库用户名 */
define('DB_USER', '用户名');
/** MySQL数据库密码 */
define('DB_PASSWORD', '数据库密码');
/**
* WordPress数据表前缀。
*
* 如果您有在同一数据库内安装多个WordPress的需求,请为每个WordPress设置
* 不同的数据表前缀。前缀名只能为数字、字母加下划线。
*/
$table_prefix = 'wp_';
在阿里云控制台将域名解析到指定的服务器上:
控制台->域名->解析->添加纪录
配置服务安全组策略,将80(http)端口和443(https)端口开放:
控制台->云服务器ECS->网络和安全->安全组->配置规则
配置80端口:
配置443端口:
配置后查看内容:
编辑Nginx配置文件:/etc/nginx/sites-available/default
client_max_body_size 10m;
server {
listen 80;
listen [::]:80;
server_name localhost; #你的域名
root /var/www/wordpress;
index index.php index.html index.htm index.nginx-debian.html;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
#try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
# include fastcgi.conf;
include fastcgi_params;
fastcgi_buffer_size 128k;
fastcgi_buffers 32 32k;
#fastcgi_intercept_errors on;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# With php-cgi (or other tcp sockets):
#fastcgi_pass 127.0.0.1:9000;
}
}
重启Nginx后,在浏览器中输入http://阿里云服务器外网IP地址/
service nginx stop
service nginx start
在浏览器中访问自己的域名,查看是否成功:
到此WordPress就安装成功了,你可以自行配制您的网站信息。
nginxapp
nginx可以学的。
nginx是由俄罗斯的一个程序设计师Igor Sysoev用C语言写的一个开源软件,主要用于互联网网站,负责接受客户端(PC网页、手机网页、手机App)的HTTP协议的请求,然后把请求分发给后端多个各种应用服务器(如Tomcat、php等)去处理,做负载均衡,然后再把后端传回来的结果页面,返回给前端。这种工作方式也被称作“反向代理”。
nginx window
当然区分Windows版和Linux版咯,Nginx的Windows版本是移植版,它最开始发布的是在Linux/Unix系统上运行的,Windows版本是移植过来的(Nginx有自己的函数库,调用的第三方库非常少),所以它是有这个不同版本的区分的。
nginx windows vue
在开发静态页面时,类似Vue的应用,我们常会调用一些接口,这些接口极可能是跨域,然后浏览器就会报cross-origin问题不给调。
最简单的解决方法,就是把浏览器设为忽略安全问题,设置--disable-web-security。不过这种方式开发PC页面到还好,如果是移动端页面就不行了。
解决办法
使用Nginx转发请求。把跨域的接口写成调本域的接口,然后将这些接口转发到真正的请求地址。
其实不仅是在开发调试时候能这么干,在生产环境也能这么玩。利用Nginx转发请求之后,就能够让所要部署的静态页面不需要放在跟请求接口同域的地方。
windows nginx uwsgi
Python Web 程序的部署方案
综合而言, 高性能的Python web站点部署方式首推 nginx + uwsgi
apache + mod_wsgi 是简单稳定但性能一般的方式
API服务器 可以直接使用tornado或者gevent
mod_python
非常原始的cgi模式部署python已经没有什么好介绍了。对于不太追求性能的管理系统和网站来说,使用 Apache 部署是一个不错的选择。较早的时候,使用 mode_python 部署python的web应用十分流行,在Django 0.96 的时候官方文档甚至推荐这种方式。
它将Python解释器嵌入到Apache server,以提供一个访问Apache server内部的接口。mod_python 在现在看来性能是不佳的,每一个http请求 mod_python 都会由一个进程初始化python解释器、载入代码、执行、然后销毁进程。
mod_wsgi
如果非要用Apache来部署python应用,mod_wsgi是一个更好的选择。WSGI 全称是 Web Server Gateway Interface ,由 PEP-333 定义。 基本上所有的python web框架都实现了wsgi接口,用mod_wsgi 能部署任何实现了wsgi的框架。实际上,不需要任何框架也可以用mod_wsgi 部署python程序。使用mod_wsgi的daemon模式,python程序会常驻内存,不会有很大的初始化和销毁进程方面的开销,所以性能是好于mod_python的。综合来说,使用Apache部署python web程序,推荐使用mod_wsgi的daemon模式。
Fastcgi
先说观点:不建议用fastcgi的方式部署Python web。
前几年由于lighttpd风头正劲和豆瓣的成功案例,fastcgi是一种很流行的部署方式。fastcgi与具体语言无关,也与web服务器无关。是一种通用的部署方式。fastcgi是对于cgi的增强,CGI程序运行在独立的进程中,并对每个Web请求建立一个进程。面对大量请求,进程的大量建立和消亡使操作系统性能大大下降。
与为每个请求创建一个新的进程不同,FastCGI使用持续的进程来处理一连串的请求。这些进程由FastCGI服务器管理,而不是web服务器。 当进来一个请求时,web服务器把环境变量和这个页面请求通过一个socket比如FastCGI进程与web服务器都位于本地)或者一个TCP connection(FastCGI进程在远端的server farm)传递给FastCGI进程。
主流的web服务器,Apache,lighttpd,nginx 都支持fastcgi,在几年前,lighttpd的mod_fcgi模块性能强劲,lighttpd+fastcgi十分流行。无论是python,ruby还是php,都有大量的站点使用这种方式部署。由于nginx的崛起,现在很少有人使用lighttpd了。
fastcgi 并不是专门为python设计,并不是所有的python框架天然的支持fastcgi,通常需要flup这样的容器来配适。flup由python编写,和专门的c实现的wsgi容器比起来性能显得相当不堪。fastcgi的稳定性对于新兴的wsgi容器来说也有差距。无论从哪个方面来看,部署python web程序,fastcgi 都已经是过去式。
uwsgi
前几年nginx还未内置uwsgi模块的时候,部署uwsgi还是一件挺麻烦的事情。随着能够在nginx中直接使用uwsgi模块,uwsgi已经是最可靠,最方便的高性能python web程序的部署方式了。
在1U的四核XEON服务器上,一个简单的wsgi handler甚至能用AB压到8000以上的qps,这已经是完爆tornado,接近gevent的性能了。 同时,uwsgi的稳定性极好。之前我们有个每天500w-1000w动态请求的站点使用uwsgi部署非常稳定,在一个渣HP 1U 服务器上,基本不用管它。
上面提到的部署方式都是相对于web网站的方式,在移动互联网的时代,我们需要的是高性能的API服务,上面这些都是过时的东西。
tornado
tornado 号称高性能,如果拿他写网站,其实一般般,只不过跟uwsgi加一些简单框架差不多而已。它真正的作用,是用来写API服务器和长连接的服务器。
由于tornado能够直接处理http请求,很多人直接拿他来裸奔直接提供服务。这种方式是不可取的,单线程的tornado只能利用cpu的一个核心,并且一旦阻塞直接就废了。通常情况下,由supervisor启动多个tornado进程,通过nginx进行反向代理负载均衡。nginx 1.14 以后的版本反向代理支持长连接,配合tornado的comet效果很好。
tornado还有一些比较奇葩的用法,比如用来做wsgi容器之类的。
gevent
gevent是一个神器,能做的事情很多。在web方面,处理http请求,用起来其实跟tornado差不多,但是要简陋很多,cookie之类的都没有。用gevent写的一些API服务,部署方式还是类似tornado,用supervisor管理多个守护进程,通过nginx做负载均衡。 同样的它的奇葩用法也和tornado一样,可以当wsgi容器用。
nginx使用教程windows
要在Windows上搭建SSH服务器,你可以使用PuTTY和OpenSSH这两个工具。这里我们以OpenSSH为例。
首先,确保你已经安装了OpenSSH。如果还没有安装,可以从OpenSSH的官方网站下载安装包并按照安装指南进行安装。
接下来,按照以下步骤搭建SSH服务器:
安装PuTTY:PuTTY是一个SSH客户端,可以通过它连接到远程服务器并执行命令。你可以从OpenSSH的官方网站下载PuTTY并按照安装指南进行安装。
启动OpenSSH服务:在Windows上,你可以通过在开始菜单中搜索“OpenSSH”来启动OpenSSH服务。
安装OpenSSH客户端:要连接到OpenSSH服务器,你需要安装OpenSSH客户端。你可以从OpenSSH的官方网站下载OpenSSH客户端并按照安装指南进行安装。
连接到OpenSSH服务器:在OpenSSH服务启动后,你可以使用PuTTY连接到服务器。在连接时,需要输入服务器的IP地址和用户名,然后输入密码进行身份验证。
执行命令:一旦连接成功,你就可以使用PuTTY连接到服务器并执行命令。例如,你可以使用PuTTY连接到服务器并执行“scp localfile.txt user@remotehost:/path/to/remote/directory”命令来将本地文件上传到远程服务器的指定目录中。
需要注意的是,搭建SSH服务器需要一定的技术水平和经验。如果你不熟悉这些技术,建议先学习相关知识再进行搭建。
本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.