Home > Article > Backend Development > How Alibaba Cloud builds a small program PHP environment
Recently I was thinking about whether Alibaba Cloud can build an official demo of small programs. I have used a small program solution based on Tengxun Cloud before. Although it is very good, I have not registered a domain name with Tengxun Cloud. I have used it in Tengxun Cloud. A domain name has been registered on Alibaba Cloud. This article mainly shares with you how Alibaba Cloud builds a small program PHP environment. I hope it can help you.
Basic environment CentOS 7.3
(1) Install Nginx
yum -y install nginx
Check whether the installation is successful
nginx -v
If the installation is successful, it will display
Wafer's Demo requires PHP version 5.6 or above, add remi source.
wget 'https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi.repo' -O /etc/yum.repos.d/remi.repo
Installation
yum install --enablerepo=remi --enablerepo=remi-php56 php php-mbstring php-mcrypt php-mysql php-curl php-fpm
Check whether the installation is successful
php -v
php version must be greater than 5.6
Apply for an SSL certificate. You can go to Alibaba Cloud to apply for a free SSL certificate. After the application is successful, download the certificate and put the compressed package Upload the certificate file in the Nginx directory to the server's /data/release/nginx directory. If there is no such directory, create a new one: After uploading the certificate, configure Nginx, enter the server's /etc/nginx/conf.d directory, and create a new weapp .conf file, the content is as follows, please note (change www.xx.com to your own domain name, 1_www.xx.com_budle.crt and 2_www.xx.com.key to your own certificate files respectively)
# 重定向 http 到 https
www.xx.com
server { listen 80; server_name www.xx.com; rewrite ^(.*)$ https://$server_name$1 permanent;}server { listen 443; server_name www.xx.com; ssl on; ssl_certificate / data/release /nginx/1_www.xx.com_bundle.crt; ssl_certificate_key /data/release/nginx/2_www.xx.com.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 ; ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384: ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128- SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA; ssl_session_cache shared:SSL:50m; ssl_prefer_server_ciphers on; root /data/release/php-demo; location ~ \.php$ { root /data/release /php-demo; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location /weapp/ { root /data/release/php-demo; index index.html index.htm index.php; try_files $uri $uri/ /index.php; }}
Run nginx
nginx -t
Installation mysql5.7
1. Configure YUM source
# Download the mysql source installation package
wget http://dev.mysql.com/get/mysql57-community-release -el7-8.noarch.rpm
# Install mysql source
yum localinstall mysql57-community-release-el7-8.noarch.rpm
Check whether the mysql source is installed successfully
yum repolist enabled | grep "mysql.*-community.*"
2. Install MySQL
yum install mysql-community-server
3. Start the MySQL service
systemctl start mysqld
View the startup status of MySQL
shell> systemctl status mysqld
4. Start up
systemctl enable mysqld
systemctl daemon-reload
5. Modify the root local login password
After the mysql installation is completed, go to / A default password is generated for root in the var/log/mysqld.log file. Find the root default password in the following way, and then log in to mysql to modify it:
grep 'temporary password' /var/log/mysqld.log
Log in and modify the default password
mysql - u root -p
mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'New password!';
Create a new database named cAuth, sorting rules It is utf8mb4_unicode_ci, the applet background uses
mysql>CREATE DATABASE IF NOT EXISTS cAuth, the sorting rule is DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;
到 wafer2-quickstart-php 仓库下载最新的 Demo 代码,修改 server/config.php:
<?php/** * Wafer php demo 配置文件 */$config = [ 'rootPath' => '', // 微信小程序 AppID 'appId' => '', // 微信小程序 AppSecret 'appSecret' => '', // 使用腾讯云代理登录 'useQcloudLogin' => false, //不使用腾迅云代理登录 /** * 这里请填写云数据库的 */ 'mysql' => [ 'host' => 'localhost', 'port' => 3306, 'user' => 'root', 'db' => 'cAuth', 'pass' => '数据库密码', 'char' => 'utf8mb4' ], 'cos' => [ /** * 区域 * 上海:cn-east * 广州:cn-sorth * 北京:cn-north * 广州二区:cn-south-2 * 成都:cn-southwest * 新加坡:sg * @see https://cloud.tencent.com/document/product/436/6224 */ 'region' => 'cn-sorth', // Bucket 名称 'fileBucket' => 'wafer', // 文件夹 'uploadFolder' => '' ], // 微信登录态有效期 'wxLoginExpires' => 7200, 'wxMessageToken' => 'abcdefgh', // 其他配置 'serverHost' => 'wx.wafersolution.com', 'tunnelServerUrl' => 'http://tunnel.ws.qcloud.la', 'tunnelSignatureKey' => '27fb7d1c161b7ca52d73cce0f1d833f9f5b5ec89', // 腾讯云相关配置可以查看云 API 秘钥控制台:https://console.cloud.tencent.com/capi 'qcloudAppId' => 1200000000,// 必须是数字 'qcloudSecretId' => '你的腾讯云 SecretId', 'qcloudSecretKey' => '你的腾讯云 SecretKey', 'networkTimeout' => 30000];
接着将 server 目录下的所有文件都上传到 /data/release/weapp/php-demo 目录下:
相关推荐:
The above is the detailed content of How Alibaba Cloud builds a small program PHP environment. For more information, please follow other related articles on the PHP Chinese website!