当前位置: 首页 > news >正文

在 Ubuntu 14.04 服务器上安装 ISPConfig3 的方法

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

简介

虽然命令行是一个强大的工具,可以让您在许多情况下快速轻松地工作,但在某些情况下,可视化界面是有帮助的。如果您正在为一台机器配置许多不同的服务,或者为客户管理系统的部分,像 ISPConfig 这样的工具可以让这项任务变得更加简单。

ISPConfig 是一个服务器控制面板,允许您轻松配置域名、电子邮件地址、站点配置和用户帐户。我们将在 Ubuntu 14.04 服务器上安装该面板。

先决条件

在开始之前,您应该有一个指向您将要使用的服务器的域名。要了解如何在 DigitalOcean 上配置您的域名,请单击此处。

您还需要一个具有 sudo 权限的非根用户。您可以按照我们的 Ubuntu 14.04 初始服务器设置指南中的步骤 1-4 来学习如何设置非根帐户。以此用户登录以开始操作。

升级系统

我们应该做的第一件事是升级基本系统。这将确保我们系统上的软件包是最新的打包版本。

在执行此操作之前,我们应该更新本地软件包索引,以便 apt 知道最新的软件包版本:

sudo apt-get update
sudo apt-get upgrade

我们的系统现在应该是最新的,我们可以继续进行安装的其余部分。

验证主机名是否正确配置

我们将首先确保我们的主机名已正确配置。在本指南中,我们将假定我们要设置的域名是 server.test.com,服务器的 IP 地址是 111.111.111.111

我们需要验证我们的主机名是否已正确配置。我们应该查看我们的 hosts 文件:

sudo nano /etc/hosts

它可能看起来像这样:

127.0.0.1           localhost server.test.com server

我们希望使我们的主机名使用我们的公共 IP 地址。您可以通过将该行拆分为两行,并将域名部分指向我们的公共 IP 地址来实现:

127.0.0.1           localhost
<span class="highlight">111.111.111.111     server.test.com server</span>

完成后保存并关闭文件。

我们还应编辑我们的 hostname 文件,以确保它也包含正确的域名:

sudo nano /etc/hostname

如果您的整个主机名没有显示,请修改该值:

<span class="highlight">server.test.com</span>

您应该通过键入以下命令来确保系统使用新值:

sudo hostname -F /etc/hostname

更改系统设置

有一些 Ubuntu 以非常规方式配置的项目,我们需要撤消这些配置,以使我们的软件能够正常运行。

我们需要做的第一件事是禁用 AppArmor,因为它与 ISPConfig 不兼容。首先,我们应该停止服务:

sudo service apparmor stop

我们还可以通过输入以下命令来告诉它卸载其配置文件:

sudo service apparmor teardown

完成后,我们需要告诉我们的服务器不要在启动时启动此服务:

sudo update-rc.d -f apparmor remove

我们实际上可以通过输入以下命令来删除所有相关文件和软件包:

sudo apt-get remove apparmor

我们需要修改的另一个配置是默认系统 shell。Ubuntu 使用 dash shell 用于系统进程,但 ISPConfig 利用了专门由 bash 提供的附加功能。我们可以通过输入以下命令将 bash 设置为默认系统 shell:

sudo dpkg-reconfigure dash

在提示时,选择 “No” 以使实用程序重新配置系统 shell 指针以使用 bash 而不是 dash

安装附加组件

现在我们的基本系统已准备就绪,我们可以开始安装 ISPConfig 可以管理的一些服务和支持 ISPConfig 的一些软件。

我们将安装基本的 LAMP(Linux、Apache、MySQL、PHP)组件、邮件软件、用于邮件的防病毒扫描软件以及其他软件包。

我们将在一个大的 apt 命令中执行所有这些操作,因此这将一次安装许多软件包:

sudo apt-get install apache2 apache2-utils libapache2-mod-suphp libapache2-mod-fastcgi libapache2-mod-python libapache2-mod-fcgid apache2-suexec libapache2-mod-php5 php5 php5-fpm php5-gd php5-mysql php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-xcache php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-imap php5-cgi php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libruby memcached phpmyadmin postfix postfix-mysql postfix-doc mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve mailman amavisd-new spamassassin clamav clamav-daemon zoo unzip zip arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl libnet-dns-perl bind9 dnsutils vlogger webalizer awstats geoip-database libclass-dbi-mysql-perl squirrelmail pure-ftpd-common pure-ftpd-mysql snmp

在安装过程中,您将被问及一些问题。您将被要求为 mailman 选择一种语言。选择 en (English) 以继续。您还将被要求选择并确认 MySQL 管理员用户的密码。

您将收到的另一个提示是是否为 dovecot 创建自签名的 SSL 证书。您应该选择 “Yes”。您将需要输入 SSL 证书的 “commonName”。这只是您的完全合格的域名:

server.test.com

对于 postfix,您将被问及需要哪种邮件配置。选择 Internet Site。然后您将被要求选择系统邮件名称。您也应该将其设置为您的域名:

server.test.com

对于 phpMyAdmin,该软件具有根据您的 Web 服务器自动配置自身的功能。选择 “apache2” 并按下 “SPACE” 以选择该选项。按下 “TAB” 然后按下 “ENTER” 以进行选择。

稍后,您将被问及是否希望使用 dbconfig-common 配置 phpMyAdmin 的数据库。在这里选择 “Yes”。您需要输入您上面选择的 MySQL 管理员帐户的密码。然后您可以选择并确认 phpMyAdmin 用户的密码。

此时,所有组件应该都已安装完毕。

配置后端组件

现在,一切都已经安装好了,我们需要开始配置我们的服务和工具。

邮件配置

让我们从在 postfix 中启用一些功能开始。使用编辑器打开默认配置文件:

sudo nano /etc/postfix/master.cf

我们只需要取消注释该文件中的一些行。具体来说,处理提交服务的行以及其下的前三个选项行,以及 smtps 服务和其下的前三个选项行:

submission inet n       -       -       -       -       smtpd-o syslog_name=postfix/submission-o smtpd_tls_security_level=encrypt-o smtpd_sasl_auth_enable=yes
. . .
smtps     inet  n       -       -       -       -       smtpd-o syslog_name=postfix/smtps-o smtpd_tls_wrappermode=yes-o smtpd_sasl_auth_enable=yes

现在,我们需要在这两个服务下添加一个额外的选项。对于每个服务,它将是相同的:

submission inet n       -       -       -       -       smtpd-o syslog_name=postfix/submission-o smtpd_tls_security_level=encrypt-o smtpd_sasl_auth_enable=yes<span class="highlight">-o smtpd_client_restrictions=permit_sasl_authenticated,reject</span>
. . .
smtps     inet  n       -       -       -       -       smtpd-o syslog_name=postfix/smtps-o smtpd_tls_wrappermode=yes-o smtpd_sasl_auth_enable=yes<span class="highlight">-o smtpd_client_restrictions=permit_sasl_authenticated,reject</span>

完成后保存并关闭文件。

另一个与邮件相关的服务是 mailman,它可以处理邮件列表。

我们可以开始告诉它创建一个新列表:

sudo newlist mailman

您将被要求提供与列表关联的电子邮件。您还将被要求选择密码。

脚本将输出一长串的别名。您应该将它们添加到您的 /etc/aliases 文件的底部:

sudo nano /etc/aliases

它应该看起来像这样:

postmaster:     root
<span class="highlight">mailman:              "|/var/lib/mailman/mail/mailman post mailman"</span>
<span class="highlight">mailman-admin:        "|/var/lib/mailman/mail/mailman admin mailman"</span>
<span class="highlight">mailman-bounces:      "|/var/lib/mailman/mail/mailman bounces mailman"</span>
<span class="highlight">mailman-confirm:      "|/var/lib/mailman/mail/mailman confirm mailman"</span>
<span class="highlight">mailman-join:         "|/var/lib/mailman/mail/mailman join mailman"</span>
<span class="highlight">mailman-leave:        "|/var/lib/mailman/mail/mailman leave mailman"</span>
<span class="highlight">mailman-owner:        "|/var/lib/mailman/mail/mailman owner mailman"</span>
<span class="highlight">mailman-request:      "|/var/lib/mailman/mail/mailman request mailman"</span>
<span class="highlight">mailman-subscribe:    "|/var/lib/mailman/mail/mailman subscribe mailman"</span>
<span class="highlight">mailman-unsubscribe:  "|/var/lib/mailman/mail/mailman unsubscribe mailman"</span>

完成后保存并关闭文件。您需要让 postfix 知道您添加的别名。您可以通过输入以下命令来实现:

sudo newaliases

我们可以通过输入以下命令来启动 mailman 服务:

sudo service mailman start

重新启动 postfix 服务以启用邮件更改:

sudo service postfix restart

当我们处理服务时,我们还应该停止并禁用 spamassassin。ISPConfig 根据需要调用它,因此它不需要一直运行:

sudo service spamassassin stop

然后告诉服务器不要在启动时再次启动它:

sudo update-rc.d -f spamassassin remove

LAMP 配置

我们需要在 PHP 中启用 mcrypt 功能:

sudo php5enmod mcrypt

我们还需要启用我们安装的一些 Apache 模块。

sudo a2enmod rewrite ssl actions include cgi dav_fs suexec dav auth_digest fastcgi alias

我们还需要对一些 Apache 配置文件进行一些调整。

我们启用的模块目前将拦截所有我们的 PHP 文件。我们希望阻止它这样做。打开 suphp 配置文件:

sudo nano /etc/apache2/mods-available/suphp.conf
&lt;IfModule mod_suphp.c&gt;&lt;FilesMatch "\.ph(p3?|tml)$"&gt;SetHandler application/x-httpd-suphp&lt;/FilesMatch&gt;suPHP_AddHandler application/x-httpd-suphp
. . .

我们将用一个单一命令替换顶部块。完成后,它应该看起来像这样:

&lt;IfModule mod_suphp.c&gt;<span class="highlight">AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml</span>suPHP_AddHandler application/x-httpd-suphp

完成后保存并关闭文件。

我们将不得不手动创建 mailman Apache 文件的符号链接。您可以通过输入以下命令来实现:

sudo ln -s /etc/mailman/apache.conf /etc/apache2/conf-available/mailman.conf

然后通过输入以下命令来启用它:

sudo a2enconf mailman

如果您计划创建托管 Ruby 文件的站点,您应该在 mime.types 文件中注释掉对 .rb 文件的处理。ISPConfig 将自行处理这个问题:

sudo nano /etc/mime.types
application/x-rss+xml                           rss
<span class="highlight">#</span>application/x-ruby                              rb
application/x-rx

完成后保存并关闭文件。

现在,我们可以重新启动 Apache 以实施我们的更改:

sudo service apache2 restart

杂项配置

我们还需要编辑系统的一些其他部分。

由于 ISPConfig 经常用于细分服务器空间以进行转售,为客户提供 FTP 访问通常是一个要求。我们已经安装了必要的软件,但我们需要做一些调整。

首先编辑 FTP 服务器的配置:

sudo nano /etc/default/pure-ftpd-common

我们需要确保我们的 FTP 用户被限制在 chroot 环境中,以免干扰系统的其他部分。我们可以通过将 VIRTUALCHROOT 设置为 true 来实现这一点:

VIRTUALCHROOT=<span class="highlight">true</span>

由于 FTP 本身是不安全的,我们至少应该用 TLS 加密来保护它。我们可以通过创建一个简单包含 1 字符的标志文件来设置这一点:

sudo nano /etc/pure-ftpd/conf/TLS

1

现在,我们需要创建一个自签名证书供进程使用。我们可以通过调用以下命令来实现:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

该证书将在一年内有效。您将需要回答一些提示。请填写您的信息。Common Name 或许是最重要的部分。

之后,我们需要通过输入以下命令来锁定密钥文件:

sudo chmod 600 /etc/ssl/private/pure-ftpd.pem

当所有这些都完成后,我们可以重新启动服务:

sudo service pure-ftpd-mysql restart

这将允许我们的 FTP 守护程序使用加密。

我们在这个系统上设置 FTP 的一个原因是因为我们安装了一个名为 awstats 的监控守护程序,它配置为期望存在这项服务。

ISPConfig 将根据需要调用 awstats,因此它不需要依赖通常用于轮询服务器的 cron 作业。我们可以通过输入以下命令来删除它:

sudo rm /etc/cron.d/awstats

安装 ISPConfig

我们终于准备好安装实际的 ISPConfig 软件了。

我们可以通过将最新稳定版本下载到我们的服务器上来实现。截至目前,具有直接链接的最新稳定版本是版本 3。我们安装完所有内容后将更新安装。

现在,您应该切换到您的主目录并使用 wget 下载项目:

cd ~
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz

下载完成后,解压目录结构并进入提取的文件夹结构的 install 子目录:

tar xzvf ISPConfig*
cd ispconfig3_install/install/

现在,我们准备安装软件。通过输入以下命令来执行:

sudo php -q install.php

您将经历一个非常冗长的安装过程。

幸运的是,您实际上只需要输入您的 MySQL root 密码!对于其他每个条目,只需按下 “ENTER” 使用默认值并跳过。

安装完成后,通过输入以下命令来更新到最新版本:

sudo php -q update.php

同样,只需按下 “ENTER” 使用每个命令的默认值。

完成后,您可以通过在您的 Web 浏览器中访问您的域名后跟 :8080 来访问您的 ISPConfig 服务:

https://<span class="highlight">server_domain_name</span>:8080

由于我们使用自签名证书,您将收到 SSL 警告:

!ISPConfig SSL 警告

点击 “proceed” 或 “continue” 来接受证书。

您将被带到登录界面。

!ISPConfig 登录界面

默认用户名和密码都是 admin

用户名:admin
密码:admin

输入这些值,您将进入 ISPConfig3 界面:

!ISPConfig 主界面

一旦到达这里,您应该通过单击 “System” 按钮,然后在左侧导航菜单的 “User Management” 类别下单击 “CP Users” 链接来更改 admin 用户的密码。

在主窗口中点击 admin 用户帐户。您将在此页面上有更改管理员用户密码的选项。

结论

您现在应该已经安装和配置了 ISPConfig 面板。您应该能够从这个界面内管理域、邮件和帐户。

相关文章:

在 Ubuntu 14.04 服务器上安装 ISPConfig3 的方法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 简介 虽然命令行是一个强大的工具&#xff0c;可以让您在许多情况下快速轻松地工作&#xff0c;但在某些情况下&#xff0c;可视化界面…...

ELK学习笔记

ElasticStack分布式日志系统概述 Elasticsearch: 一个分布式搜索引擎&#xff0c;能够快速存储、搜索和分析大量数据。核心概念包括索引&#xff08;Index&#xff09;、文档&#xff08;Document&#xff09;和分片&#xff08;Shard&#xff09;。使用 RESTful API 进行数据操…...

Python+Selenium+Pytest+POM自动化测试框架封装详解

1、测试框架简介 1&#xff09;测试框架的优点 代码复用率高&#xff0c;如果不使用框架的话&#xff0c;代码会显得很冗余。可以组装日志、报告、邮件等一些高级功能。提高元素等数据的可维护性&#xff0c;元素发生变化时&#xff0c;只需要更新一下配置文件。使用更灵活的…...

Hidden Marlov Model(HMM)

一、Model 1、将声学特征设为X&#xff0c;经过语音识别得到的tokens设为Y&#xff0c;目标是找到通过X得到Y的最大概率&#xff0c;可以通过概率公式改变为 分为两个概率 2、将tokens序列Y转化为states序列S&#xff0c;声学特征分得更细 3、从states到声学特征的过程 二、HM…...

mamba的安装及下载速度慢问题解决

同事反馈mamba的安装时网络慢 mamba是conda的加速工具&#xff0c;相比于conda 对包和环境的管理&#xff0c;mamba可以实现并行运算。相比于 conda&#xff0c;mamba 是用C重写了 conda 的部分功能&#xff0c;运行效率显著提高&#xff0c;可以进行并行的下载&#xff0c;使…...

【Linux入门】Linux环境搭建

目录 前言 一、发行版本 二、搭建Linux环境 1.Linux环境搭建方式 2.虚拟机安装Ubuntu 22.02.4 1&#xff09;安装VMWare 2&#xff09;下载镜像源 3&#xff09;添加虚拟机 4&#xff09;换源 5&#xff09;安装VM Tools 6)添加快照 总结 前言 Linux是一款自由和开放…...

CPU缓存一致性机制详解

CPU缓存一致性机制详解 在多核处理器中&#xff0c;缓存一致性是保证系统正常运行的重要环节。本文详细介绍了缓存一致性协议、写入策略、总线嗅探、目录协议等相关概念&#xff0c;并通过示例代码解释了这些机制是如何在实际应用中工作的。通过学习本文&#xff0c;读者可以深…...

Android 12系统源码_屏幕设备(一)DisplayManagerService的启动

前言 DisplayManagerService是Android Framework中管理显示屏幕相关的模块&#xff0c;各种Display的连接、配置等&#xff0c;都是通过DMS和来管理控制。 在DMS模块中&#xff0c;对显示屏幕的描述分为物理显示屏(physical display)和逻辑显示屏(logical display)&#xff0c…...

《AI视频类工具之十——​D-ID》

一.简介 官网:D-ID | The #1 Choice for AI Generated Video Creation Platform D-ID是一个人工智能生成的视频创建平台,可以轻松快速地从文本输入中创建高质量、高性价比和引人入胜的视频,背后的Al技术是由Stable Difusion和GPT.3提供支持,可以在没有任何技术知识的情况…...

【网络】局域网LAN、广域网WAN、TCP/IP协议、封装和分用

文章目录 局域网 LAN广域网 WAN网络中的重要概念IP 地址端口号 认识协议协议分层是什么OSI 七层网络模型TCP/IP 五层网络模型&#xff08;或四层&#xff09;物理层传输层网络层数据链表层应用层网络设备所在分层 封装和分用[站在发送方视角]&#xff08;封装&#xff09;[站在…...

我司搜索中台的三次演变

本人从入职就开始负责我司的搜索中台了&#xff0c;总共是经历了三个大版本的迭代。 分别是&#xff1a; 基于阿里云智能开放搜索OpenSearch实现的第一代自研&#xff0c;开源canal&#xff08;数据同步&#xff09; 底层阿里云elasticsearch 对索引封装 实现的第二代自研&a…...

html+css+js网页设计 电商模版4个页面

htmlcssjs网页设计 电商模版4个页面 带js 网页作品代码简单&#xff0c;可使用任意HTML编辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源码 1&…...

区块链技术在Facebook中的潜力:未来趋势与挑战

数据安全的新高度 区块链技术以其去中心化和不可篡改的特性&#xff0c;正在成为提升数据安全和隐私保护的重要工具。Facebook作为全球最大的社交媒体平台之一&#xff0c;正积极探索如何将区块链技术应用于其平台&#xff0c;以增强用户数据的安全性和隐私保护。Facebook在应…...

dockerfile自定义镜像

目录 概念 基于dockerfile创建 dockerfile的命令 构建容器 FROM ENTRYPOINT和CMD RUN COPY和ADD 工作目录和环境变量以及容器卷&#xff08;挂载卷&#xff09; EXPOSE 实战 概念 dockerfile就是自定义镜像&#xff0c;通过dockerfile创建的都是镜像&#xff0c;而…...

【工作状态】如何保持专注?

好的睡眠计划主题化 1、保持足够的睡眠&#xff0c;才能头脑清晰和有精力&#xff0c;工作不是纯拼体力&#xff0c;要用脑力的。 2、脑力主要工作放在午餐前&#xff0c;在脑力充足的时候使用脑力&#xff0c;下午五点后可以安排脑力活动较低的工作&#xff0c;比如听课读书。…...

欧科云链研究院对话:风浪越大鱼越贵—链上数据洞悉加密市场规律

作者 Hedy 出品 OKG Research “我们从来就不是理性人。但可以用最简单的工具——链上数据做‘最猛’的分析。” 在经历了超级宏观周之后&#xff0c;金融市场产生了巨大的震荡&#xff0c;加密市场的表现也越来越受到宏观经济因素的影响。欧科云链研究院OKG Research 集结多…...

SQLite库笔记:日期和时间函数

1. 函数概述 SQLite支持7个日期和时间函数&#xff0c;如下&#xff1a; 1 date(time-value, modifier, modifier, ...) 返回YYYY-MM-DD格式的日期 2 time(time-value, modifier, modifier, ...) 返回HH:MM:SS格式的时间 3 datetime(time-value, modifier, modifier, ...…...

Linux开发板运行报错/system/bin/sh: can‘t create /dev/leds: Permission denied

Linux开发板运行报错/system/bin/sh: cant create /dev/leds: Permission denied 1.问题解决 1.问题解决 /system/bin/sh: can’t create /dev/leds: Permission denied 在linux开发板下运行驱动报错没有权限&#xff0c;需要运行 su,同时也会停止打印 在运行&#xff1a; ch…...

月薪5W的项目经理是如何面试的?这份面试攻略请收好!

面试是项目经理求职必须经历的一关&#xff0c;但很多经验不够丰富的项目经理不知道面试会问些什么问题&#xff0c;也不知道要怎么回答&#xff0c;无疑会直接影响面试企业的判断&#xff0c;使项目经理求职受阳.所以&#xff0c;项目经理想要顺利求职&#xff0c;还是有必要掌…...

接口隔离原则

接口隔离原则 接口隔离原则就是客户端不应该依赖它不需要的接口&#xff0c;或者说类间的依赖关系应该建立在最小的接口上。 我们以搜索美女为例&#xff0c;设计了如下的类图&#xff1a; 源代码如下。美女及其实现类&#xff1a; 搜索程序及其子类源代码如下&#xff1a; 最…...

【C++ 面试 - 基础题】每日 3 题(十六)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏&…...

端到端测试自动化:使用JavaScript打造可靠的Web应用

端到端测试&#xff08;End-to-End Testing&#xff0c;简称E2E测试&#xff09;是软件测试的一种形式&#xff0c;用于验证整个应用从端到端的流程是否按预期工作。在JavaScript生态系统中&#xff0c;E2E测试通常使用专门的框架来模拟用户交互&#xff0c;验证应用的业务逻辑…...

『大模型笔记』基于LLM生成真实世界数据的合成问答数据!

基于LLM生成真实世界数据的合成问答数据! 文章目录 一. 基于LLM生成真实世界数据的合成问答数据!1. 概述(Overview)2. 场景(Scenario)2.1. 概述2.1.1. 第1阶段:构建种子数据集(Stage 1. Constructing a seed dataset)2.1.2. 第2阶段:数据增强(可选)(Data Augmentation…...

一个使用Python和`scikit-learn`库实现KMeans聚类算法的简单示例

一个使用Python和scikit-learn库实现KMeans聚类算法的简单示例。首先&#xff0c;请确保您已经安装了scikit-learn库。如果没有安装&#xff0c;可以通过pip安装它&#xff1a; pip install scikit-learn下面是一个简单的例子&#xff0c;展示如何使用scikit-learn中的KMeans进…...

记录一下vue2和vue3中如何配置keep-alive及写法上的差异

应用场景 跳转下一个页面后&#xff0c;返回当前页面&#xff0c;或者在多个页面之间切换&#xff0c;保留页面中的所有状态&#xff0c;常见的就是填写到一半的表单。h5的tabbar页面缓存&#xff0c;避免重复加载数据。 主要实现思路 这个东西很常见&#xff0c;动态路由一…...

面试题:Rabbitmq怎么保证消息的可靠性?

1.消费端消息可靠性保证&#xff1a; 消息确认&#xff08;Acknowledgements&#xff09;&#xff1a;(自动(默认),手动) 消费者在接收到消息后&#xff0c;默认情况下RabbitMQ会自动确认消息&#xff08;autoAcktrue&#xff09;。为保证消息可靠性&#xff0c;可以设置auto…...

性能测试工具之JMeter

JMeter Apache JMeter应用程序是开源软件,是一个100%纯Java应用程序,旨在负载测试功能行为和衡量性能。它最初是为测试Web应用程序而设计的,但后来扩展到其他测试功能。 JMeter是一个免费、开源、跨平台的性能测试工具,于20世纪90年代后期面世。这是一个成熟、健全且具有…...

SQL Zoo 9-.Window functions

以下数据均来自SQL Zoo 1.Show the lastName, party and votes for the constituency S14000024 in 2017.&#xff08;显示2017年选区“S14000024”的姓氏、政党和选票&#xff09; SELECT lastName, party, votesFROM geWHERE constituency S14000024 AND yr 2017 ORDER BY…...

智能化清理C盘的方法 小白也可以轻松清理C盘了 不再担心误删文件

智能化清理C盘的方法 小白用户也可以轻松清理C盘了 不再担心误删文件。对于电脑小白来说&#xff0c;C盘清理是一个大大的问题&#xff0c;因为大家都不知道C盘里有哪些文件可以删除&#xff0c;哪些不能删除&#xff0c;所以就直接的导致大家不可能去清理c盘垃圾。 就算是C盘…...

在c#中常用的特性

在C#中&#xff0c;特性&#xff08;Attributes&#xff09;是一种将元数据应用于程序实体&#xff08;如类、方法、属性等&#xff09;的方式。这些元数据可以在编译时和运行时被读取&#xff0c;常用于配置、自定义行为、装饰器模式等场景。以下是一些C#中常用的特性&#xf…...

企业网站建设方案.doc/响应式网站 乐云seo品牌

elites alliance allies revert stewardship fringe orthodoxy creak incitement repudiate wrangle democrat credence filibuster petition disbar purge tumor ductal oncogenic mutant inflammation progenitor...

建个企业网站对公司宣传有用吗/手游推广渠道平台

golang开源项目如今已经狂奔了10年&#xff0c; Google的Go编程语言无疑已经名声大噪。 Go轻巧且易于编译&#xff0c;由于其慷慨的库和抽象可简化并发和分布式&#xff08;读取&#xff1a;云&#xff09;应用程序的开发&#xff0c;因此引起了广泛的关注。 但是&#xff0c;…...

厦门建设局耿家强/seo链接优化建议

曾经多次我的鼠标都是因为滚轴坏了而作废&#xff0c;我想这也是大部分小伙伴会遇到的问题。最近我的无线鼠标摔了一下&#xff0c;滚轴坏了。这次闲来无事&#xff0c;索性直接拆机&#xff0c;探索探索&#xff0c;看看可以不可以修好。结果还真的被朕修好了ahahah&#xff0…...

免费注册一个网站/公司网络推广方案

只包含中文和数字 /^(([\u4E00-\u9FA5])|(\d))$/不能包含字母 /^[^A-Za-z]*$/ A股代码 /^(s[hz]|S[HZ])(000[\d]{3}|002[\d]{3}|300[\d]{3}|600[\d]{3}|60[\d]{4})$/大于0, 小于150, 支持小数位出现5, 如145.5, 用于判断考卷分数 /^150$|(^\d|^[1-9]\d|^[1][0-4]\d)(\.5)?$/ht…...

女装东莞网站建设/优搜云seo

在计算金额的时候&#xff0c;实际上整数&#xff0c;浮点数有时候有点捉襟见肘。于是math包提供了一个Bigdecimal类&#xff0c;所以可以学习一下这个BigDecimal的源码和使用。 首先是看一下他的构造方法&#xff1a; 看起来构建的方式很多&#xff0c;但实际上之间的差别很…...

图书馆网站开发总结/seo零基础教学视频

ARM开发总结的小知识 字节 8位 半字 16位 字 32位 Code, RO-data RW-data,ZI-data 注意设置堆和栈大小 Code为程序代码部分 RO-data 表示程序定义的常量 const temp; RW-data 表示已初始化的全局变量 ZI-data 表示未初始化的全局变量 Program Size: Code"18248"RO-…...