|
|
(未显示同一用户的43个中间版本) |
第1行: |
第1行: |
| =Ubuntu Web Servers=
| |
|
| |
|
| Refers to: https://help.ubuntu.com/12.04/serverguide/web-servers.html
| |
|
| |
|
| [[Ubuntu/Web Servers]]
| |
|
| |
|
| 一个Web服务器是一个软件负责从客户端接受HTTP请求,所谓客户端通常被认为是Web浏览器,它服务客户端HTTP请求及可选的数据内容,它们通常是Web页面例如HTML文档及链接的对象(图片等)。
| | =Contributes= |
|
| |
|
| [[#HTTPD - Apache2 Web Server]] | | * [[Sudo]], upading based on others. |
| | * [[Ubuntu/Web Servers]], new creating, sub pages are not finished yet. |
| | *: [[Ubuntu/Web Servers/HTTPD - Apache2 Web Server]] |
| | *: [[Ubuntu/Web Servers/PHP - Scripting Language]] |
| | *: [[Ubuntu/Web Servers/Squid - Proxy Server]] |
|
| |
|
| [[PHP5 - Scripting Language]]
| | =Doing= |
|
| |
|
| [[Squid - Proxy Server]] | | * [https://www.gnu.org/software/bash/manual/bash.html#Readline-Bare-Essentials Bash Reference Manual] |
| | *: [[Bash Reference Manual]] |
| | *: [[Bash Reference Manual/zh]] |
|
| |
|
| [[Ruby on Rails]]
| | =Want to= |
|
| |
|
| [[Apache Tomcat]] | | * [https://help.ubuntu.com/lts/serverguide/remote-administration.html Remote Administration] |
| | | * [http://php.net/manual/en/book.pgsql.php PostgreSQL] |
| ==HTTPD - Apache2 Web Server==
| | * [http://help.eclipse.org/mars/index.jsp?nav=%2F0 PDT] |
| | | * [http://help.eclipse.org/mars mars] |
| Apache是Linux系统中最广泛使用的Web Server。众多的Web Server被客户端计算机使用以提供相关的Web页面请求服务。客户端通常使用Web Browser发出请求并浏览Web页面,诸如''Firefox''、''Opera''、''Chromium''或者''Mozilla''。
| | * [https://app.netease.im/index#/ cloud] |
| | |
| 用户输入的统一资源定位符(URL)指向一个Web server,并依赖其全称域名(FQDN)及路径指向需要的资源。例如,用户可以输入下面的FQDN以浏览Ubuntu Web site的主页:
| |
| | |
| <pre>
| |
| www.ubuntu.com
| |
| </pre>
| |
| | |
| 要浏览community子页面则可以输入下面的FQDN:
| |
| | |
| <pre>
| |
| www.ubuntu.com/community
| |
| </pre>
| |
| | |
| 最常见的用于传输Web Page的协议是超文本传输协议(HTTP)。其他协议还包括超文本传输协议加安全套接字层的(HTTPS),以及文件传输协议(FTP)用于上传和下载文件,它们均是被支持的协议。
| |
| | |
| Apache Web Server常常与MySQL数据库引擎组合使用,超文本预处理器的脚步语言(PHP),以及其他流行的脚本语言如Python和Perl。这个配置被术语化为LAMP(Linux, Apache, MySQL and Perl/Python/PHP)它们针对开发和部署基于Web的应用形成了一个强大健壮的平台。
| |
| | |
| [[#Installation|安装]]
| |
| | |
| [[#Configuration|配置]]
| |
| | |
| [[#HTTPS Configuration|HTTPS 配置]]
| |
| | |
| [[#Sharing Write Permission|共享写权限]]
| |
| | |
| [[#References|引用]]
| |
| | |
| ===Installation===
| |
| | |
| ===Configuration===
| |
| | |
| Apache2的配置指令存放于多个纯文本的配置文件中。这些配置指令被分割为多个文件并放置于多个目录中:
| |
| | |
| # ''apache2.conf'': Apache2的主配置文件。它包含Apache2的一些全局设置。
| |
| # ''conf.d'': 目录,包含一些Apache2的全局配置文件。Apache2的其他内容服务包可以添加文件,符号链接到这个目录。
| |
| # ''envvars'': 用于设置Apache2环境变量的文件。
| |
| # ''httpd.conf'': 历史上是Apache2的主配置文件,命名的httpd守护进程。现在,这个文件通常是空的,大多配置选项被移动到下面的引用目录。这个文件可用于用户指定特定的配置选项并作用于全局Apache2。
| |
| # ''mods-available'': 这个目录包含多个配置文件以装载和配置他们。当然不是所有模块都将拥有特定的配置文件。
| |
| # ''mods-enabled'': 持有符号链接的文件存放于/etc/apache2/mods-available。当一个模块配置文件持有符号链接时,它们将在apache2下次启动后生效。
| |
| # ''ports.conf'': 放置的指令用于描述Apache2正在监听的TCP端口。
| |
| # ''sites-available'': 该目录用于存放Apache2虚拟主机的配置文件。虚拟主机允许Apache2使用分开的配置去配置多个站点。
| |
| # ''sites-enabled'': 如同mods-enabled、sites-enabled包含符号链接并存放于/etc/apache2/sites-available目录。同样地,当在sites-available中的一个配置文件是符号链接时,在Apache2重新启动时该配置站点将被激活一次。
| |
| | |
| 此外,其他的配置文件可以通过Include指令添加,并且通配符可以被使用以包含多个配置文件。任何指令都可以被放置在这些配置文件中。主配置文件的更新仅在Apache2启动或重启动时才能被识别并应用。
| |
| | |
| 服务器也将读取一个包含mime文档类型的文件;改文件名通过TypesConfig指令设置,通常经由/etc/apache2/mods-available/mime.conf,它可以包含附加和重写,缺省是/etc/mime.types。
| |
| | |
| : 基本设置
| |
| : <hr/>
| |
| : 这一节解释Apache2服务器基本配置参数。更多细节请参阅Apache2 Documentation。
| |
| | |
| # 11
| |
| # 22
| |
| | |
| =Ubuntu=
| |
| | |
| ==sudo==
| |
| | |
| 以其他用户身份执行一个命令.
| |
| | |
| 用法:
| |
| | |
| : sudo -h | -K | -V
| |
| : sudo -v [-Akns] [-g group] [-h host] [-p prompt] [-u user]
| |
| : sudo -l [-Akns] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command]
| |
| : sudo [-AbEHknPS] [-r role] [-t type] [-C num] [-g group] [-h host] [p prompt] [-u user] [VAR=value] [-i|-s] [<command>] | |
| : sudo -e [-Akns] [-r role] [-t type] [-C num] [-g group] [-h host] [-p prompt] [-u user] file ...
| |
| | |
| Options:
| |
| | |
| {| style="border: none" width="100%"
| |
| |-
| |
| | width="200px" | -A, --askpass
| |
| | 使用一个辅助程序以提示密码。
| |
| |-
| |
| | -b, --background
| |
| | 在后台运行命令。
| |
| |-
| |
| | -C, --close-from=num
| |
| | 关闭所有大于等于num的文件描述。
| |
| |-
| |
| | -E, --preserve-env
| |
| | 运行命令时保存用户环境。
| |
| |-
| |
| | -e, --edit
| |
| | 编辑文件而非运行一个命令。
| |
| |-
| |
| | -g, --group=group
| |
| | 以指定的组名或组ID运行一个命令。
| |
| |-
| |
| | -H, --set-home
| |
| | 设置 HOME 变量以指向用户的 HOME 目录。
| |
| |-
| |
| | -h, --help
| |
| | 显示帮助信息并且退出。
| |
| |-
| |
| | -h, --host=host
| |
| | 在主机上运行命令(如果插件支持)。
| |
| |-
| |
| | -i, --login
| |
| | 以目标用户运行登录shell;也可以指定一个命令。
| |
| |-
| |
| | -K, --remove-timestamp
| |
| | 完全删除时间戳文件。
| |
| |-
| |
| | -k, --reset-timestamp
| |
| | 失效时间戳文件。
| |
| |-
| |
| | -l, --list
| |
| | 列出用户特权或检查一个特定的命令;长格式使用两次。
| |
| |-
| |
| | -n, -- non-interactive
| |
| | 非交互方式,无提示被使用。
| |
| |-
| |
| | -P, --preserve-groups
| |
| | 保存组向量而非设置指定的目标。
| |
| |-
| |
| | -P, --prompt=prompt
| |
| | 使用指定的密码提示。
| |
| |-
| |
| | -r, --role=role
| |
| | 用指定的角色创建SELinux安全上下文。
| |
| |-
| |
| | -S, --stdin
| |
| | 从变准输入读取密码。
| |
| |-
| |
| | -s, --shell
| |
| | 以目标用户运行 shell;也可以指定一个命令。
| |
| |-
| |
| | -t, --type=type
| |
| | 使用指定的类型创建 SELinux 安全上下文。
| |
| |-
| |
| | -U, --other-user=user
| |
| | 在列表模式中,显示用户特权。
| |
| |-
| |
| | -u, --user=user
| |
| | 以指定的用户或用户ID运行命令(或编辑文件)。
| |
| |-
| |
| | -V, --version
| |
| | 显示版本信息并且退出。
| |
| |-
| |
| | -v, --validate
| |
| | 更新用户的时间戳而不运行一个命令。
| |
| |-
| |
| | --
| |
| | 停止处理命令行参数。
| |
| |}
| |
| | |
| ==ifconfig==
| |
| | |
| 用法:
| |
| | |
| : ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]
| |
| : [add <address>[/<prefixlen>]]
| |
| : [del <address>[/<prefixlen>]] | |
| : [[-]broadcast [<address>]] [[-]pointopoint [<address>]]
| |
| : [netmask <address>] [dstaddr <address>] [tunnel <address>]
| |
| : [outfill <NN>] [keepalive <NN>]
| |
| : [hw <HW> <address>] [metric <NN>] [mtu <NN>]
| |
| : [[-]trailers] [[-]arp] [[-]allmulti]
| |
| : [multicast] [[-]promisc]
| |
| : [mem_start <NN>] [io_addr <NN>] [irq <NN>] [media <type>]
| |
| : [txqueuelen <NN>]
| |
| : [[-]dynamic]
| |
| : [up|down] ...
| |
| | |
| : <HW>=硬件类型。
| |
| : 列表可能的硬件类型:
| |
| :: loop (Local Loopback) slip (Serial Line IP) cslip (VJ Serial Line IP)
| |
| :: slip6 (6-bit Serial Line IP) cslip6 (VJ 6-bit Serial Line IP) adaptive (Adaptive Serial Line IP)
| |
| :: ash (Ash) ether (Ethernet) ax25 (AMPR AX.25)
| |
| :: netrom (AMPR NET/ROM) rose (AMPR ROSE) tunnel (IPIP Tunnel)
| |
| :: ppp (Point-to-Point Protocol) hdlc ((Cisco)-HDLC) lapb (LAPB)
| |
| :: arcnet (ARCnet) dlci (Frame Relay DLCI) frad (Frame Relay Access Device)
| |
| :: sit (IPv6-in-IPv4) fddi (Fiber Distributed Data Interface) hippi (HIPPI)
| |
| :: irda (IrLAP) ec (Econet) x25 (generic X.25)
| |
| :: eui64 (Generic EUI-64)
| |
| : <AF>=Address family. Default: inet
| |
| : List of possible address families:
| |
| :: unix (UNIX Domain) inet (DARPA Internet) inet6 (IPv6)
| |
| :: ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE)
| |
| :: ipx (Novell IPX) ddp (Appletalk DDP) ec (Econet)
| |
| :: ash (Ash) x25 (CCITT X.25)
| |
| | |
| ==ip==
| |
| | |
| ==iwconfig==
| |
| | |
| ==rfkill==
| |
| | |
| ==ping==
| |
| | |
| ==traceroute==
| |
| | |
| ==arp==
| |
| | |
| ==netstat==
| |
| | |
| ==nslookup==
| |
| | |
| =Java=
| |
| | |
| =C++=
| |
| | |
| ==g++==
| |
| | |
| 用法:g++ [选项] file...
| |
| | |
| 选项:
| |
| | |
| {| style="border: none" width="100%"
| |
| |-
| |
| | width="200px" | -pass-exit-codes
| |
| | Exit with highest error code from a phase
| |
| |-
| |
| | --help
| |
| | Display this information
| |
| |-
| |
| | --target-help
| |
| | Display target specific command line options
| |
| |-
| |
| |
| |
| |
| |
| |-
| |
| |
| |
| |
| |
| |}
| |
| | |
| | |
| | |
|
| |
|
| |
| --help={common|optimizers|params|target|warnings|[^]{joined|separate|undocumented}}[,...]
| |
| Display specific types of command line options
| |
| (Use '-v --help' to display command line options of sub-processes)
| |
| --version Display compiler version information
| |
| -dumpspecs Display all of the built in spec strings
| |
| -dumpversion Display the version of the compiler
| |
| -dumpmachine Display the compiler's target processor
| |
| -print-search-dirs Display the directories in the compiler's search path
| |
| -print-libgcc-file-name Display the name of the compiler's companion library
| |
| -print-file-name=<lib> Display the full path to library <lib>
| |
| -print-prog-name=<prog> Display the full path to compiler component <prog>
| |
| -print-multiarch Display the target's normalized GNU triplet, used as
| |
| a component in the library path
| |
| -print-multi-directory Display the root directory for versions of libgcc
| |
| -print-multi-lib Display the mapping between command line options and
| |
| multiple library search directories
| |
| -print-multi-os-directory Display the relative path to OS libraries
| |
| -print-sysroot Display the target libraries directory
| |
| -print-sysroot-headers-suffix Display the sysroot suffix used to find headers
| |
| -Wa,<options> Pass comma-separated <options> on to the assembler
| |
| -Wp,<options> Pass comma-separated <options> on to the preprocessor
| |
| -Wl,<options> Pass comma-separated <options> on to the linker
| |
| -Xassembler <arg> Pass <arg> on to the assembler
| |
| -Xpreprocessor <arg> Pass <arg> on to the preprocessor
| |
| -Xlinker <arg> Pass <arg> on to the linker
| |
| -save-temps Do not delete intermediate files
| |
| -save-temps=<arg> Do not delete intermediate files
| |
| -no-canonical-prefixes Do not canonicalize paths when building relative
| |
| prefixes to other gcc components
| |
| -pipe Use pipes rather than intermediate files
| |
| -time Time the execution of each subprocess
| |
| -specs=<file> Override built-in specs with the contents of <file>
| |
| -std=<standard> Assume that the input sources are for <standard>
| |
| --sysroot=<directory> Use <directory> as the root directory for headers
| |
| and libraries
| |
| -B <directory> Add <directory> to the compiler's search paths
| |
| -v Display the programs invoked by the compiler
| |
| -### Like -v but options quoted and commands not executed
| |
| -E Preprocess only; do not compile, assemble or link
| |
| -S Compile only; do not assemble or link
| |
| -c Compile and assemble, but do not link
| |
| -o <file> Place the output into <file>
| |
| -pie Create a position independent executable
| |
| -shared Create a shared library
| |
| -x <language> Specify the language of the following input files
| |
| Permissible languages include: c c++ assembler none
| |
| 'none' means revert to the default behavior of
| |
| guessing the language based on the file's extension
| |
| | |
| Options starting with -g, -f, -m, -O, -W, or --param are automatically
| |
| passed on to the various sub-processes invoked by g++. In order to pass
| |
| other options on to these processes the -W<letter> options must be used.
| |
| | |
| For bug reporting instructions, please see:
| |
| <file:///usr/share/doc/gcc-5/README.Bugs>.
| |
| | |
| =PostgreSQL=
| |
| | |
| =Eclipse=
| |
| | |
| During eclipse installing, if error occured type following command to fix the error.
| |
| | |
| sudo apt-get install eclipse --fix-missing
| |