webpenson, 17 五月, 2021

一、准备php的第三方源

因为ubuntu默认的php是7.2的版本,看很多大神介绍7.3比7.2有提高不少,所以考虑用php的第三方源
(最新的7.4是2019年11月发布的,还在快速迭代,更新bug,暂时不考虑。)

webpenson, 17 五月, 2021

php -m  linux下如何查看php开启了哪些扩展

安装扩展

准备php的第三方源

因为ubuntu默认的php是7.2的版本,看很多大神介绍7.3比7.2有提高不少,所以考虑用php的第三方源
(最新的7.4是2019年11月发布的,还在快速迭代,更新bug,暂时不考虑。)

  1. 第三方源ppa:ondrej/php 是一个比较知名的PHP源。
    作者Ondřej Surý 是 Debian PHP 软件源的官方维护者之一,所以说稳定性和安全性基本上不是问题。
  2. 用【ppa:ondrej/php】还是同时安装多个版本的php在同一台服务器,可以非常方便的切换版本,可以支持php5.6/7.1/7.2/7.3/7.4
  3. 先安装相关依赖包(以下都是以root用户进行操作)

apt -y install software-properties-common apt-transport-https lsb-release ca-certificates

#-y是省去提示yes/no时,输入y的麻烦

webpenson, 17 五月, 2021

drupal8安装时

Requirements problem

Errors found

Translations directory The translations directory does not exist.

The installer requires that you create a translations directory as part of the installation process. Create the directory sites/default/files/translations . More details about installing Drupal are available in INSTALL.txt.

其实是apache2和php的权限问题

首先查询文件夹的权限

drwxr-xr-x  1 vagrant vagrant 4096 May  5 12:17 html/

所有者和群组都是vagrant

webpenson, 17 五月, 2021

安装php7.3后要在apache2中启用

sudo a2enmod proxy_fcgi setenvif

sudo a2enconf php7.3-fpm

sudo service apache2 restart

apache2 修改默认php版本

 

//禁用php7.0

sudo a2dismod php7.0

//启用php7.3

sudo a2enmod php7.3

sudo a2enconf php7.3-fpm

sudo a2enmod proxy_fcgi setenvif

//重启apache2

sudo service apache2 restart

更换后网站出现 错误The website encountered an unexpected error. Please try again later.

 

webpenson, 17 五月, 2021

使用Drupal Console出错

https://drupalconsole.com/docs/zh-hans/getting/launcher

找这个安装的 

PHP Parse error:  syntax error, unexpected '?', expecting variable (T_VARIABLE) in phar:///usr/local/bin/drupal/vendor/symfony/console/Output/Output.php on line 40

ubuntu16   apache2

php版本

webpenson, 17 五月, 2021

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_fileinfo.dll' - /usr/lib/php/20151012/php_fileinfo.dll: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_gd2.dll' - /usr/lib/php/20151012/php_gd2.dll: cannot open shared object file: No such file or directory in Unknown on line 0

webpenson, 17 五月, 2021

https://drupalconsole.com/

使用 Drupal Console 安装器

https://drupalconsole.com/docs/zh-hans/getting/launcher

使用 curl:

$ curl https://drupalconsole.com/installer -L -o drupal.phar

现在你可以这样使用:

$ php drupal.phar

你可以将这个文件放到你的 PATH 环境变量中的某个文件夹中,然后就可以在系统的任何地方访问这个文件了。对于类 Unix 系统,你可以给这个文件添加可执行权限,不必再输入 php 。

系统的任何地方都可以访问

$ mv drupal.phar /usr/local/bin/drupal

添加可执行权限

$ chmod +x /usr/local/bin/drupal

现在你可以执行:

$ drupal

webpenson, 17 五月, 2021

http://www.symfonychina.com/

Symfony2是一个基于PHP语言的Web开发框架,有着开发速度快、性能高等特点。本文以一个程序示例的实现过程详细叙述了Symfony2框架的配置与程序开发

简单的模板功能symfony是一个开源的PHP Web框架。基于最佳Web开发实践,已经有多个网站完全采用此框架开发,symfony的目的是加速Web应用的创建与维护。

具有如下特性:

webpenson, 17 五月, 2021
Drupal8的新特性介绍:主题引擎Twig,移动优先的主题,采用HTML5,多语言支持,易于写作,快速编辑,核心集成Views,内建Webservice服务功能,字段丰富,向导,加载提速,工业标准
webpenson, 17 五月, 2021

Drupal拥有优秀的安全机制,它对安全问题进行跟踪记录,并组织人员调查、验证、处理安全问题。

Drupal的安全团队经常与Drupal社区一起工作以共同解决Drupal安全问题。Drupal安全团队的成员会对Drupal核心或贡献项目代码进行分析,以及时发现潜在的安全问题。

使用Drupal的任何人都可以订阅Drupal安全邮件,以便于及时查看安全问题及其更新。

开源软件的安全性

开源软件比私用软件更加安全,开源软件的安全问题更容易发现并修复。这是一篇来自IBM的文章’开源软件的安全性’总结了开源软件安全相关的问题。另外美国白宫的官方网站使用的是Drupal系统。

Drupal如何处理常见的安全漏洞

Drupal的API和默认配置是安全的。像注入式攻击、跨站点脚本攻击、会话管理、跨站点请求伪造等问题,在Drupal中这些问题都有完美的解决方案。详情请阅读Drupal的安全报告。