linux、Nginx、MySql、PHP

php:用于处理动态资源(uri包含?=&或以.php结尾)
nginx不能处理动态资源 ps: 如何安装nginx点这

安装php

  1. 配置yum(7.2版本

http://www.manongjc.com/detail/25-qpyxndyogppmfdf.html (php8.0版本

[webtatic-php]
name = php Repository
baseurl = http://us-east.repo.webtatic.com/yum/el7/x86_64/
enabled = 1
gpgcheck = 0
  1. 安装和配置 ```bash yum repolist # 检查yum源

yum install -y php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-pdo php72w-xml php72w-fpm php72w-mysqlnd php72w-opcache php72w-pecl-memcached php72w-pecl-redis php72w-pecl-mongodb

升级

配置源,然后

yum install -y php php-bcmath php-cli php-common php-devel php-fpm php-gd php-intl php-ldap php-mbstring php-mysqlnd php-odbc php-pdo php-pear php-pecl-xmlrpc php-pecl-zip php-process php-snmp php-soap php-sodium php-xml php-devel php-embedded php-opcache php-pecl-memcached php-pecl-redis php-pecl-mongodb

```bash
# 第8行和第10行设置成nginx主配置文件中的用户

# 然后检查
systemctl enable php-fpm
systemctl start php-fpm
ss -lntup |grep php-fpm 
ps -ef |grep php-fpm
  1. 创建站点内容

mkdir -p /app/code/blog

<?php
phpinfo();
?>
  1. 配置虚拟主机 ```bash server { listen 80; server_name blog.azisamememe.shop; root /app/code/blog;

    location / { index index.php; }

    location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

插入一条笔记,如果出现相同的匹配,优先级高的胜出,如果匹配相同,优先级也相同,谁在上面谁就赢。

try_files 用于判断对应的$uri 文件或目录是否存在,如果不存在,则uri设置为/index.html \

try_files $uri $uri/ /index.html;


5. 测试
- 浏览器访问 blog.azisamememe.shop/info.php
<a name="xWoNa"></a>
# 安装mariabd
```bash
# 1. 安装mariadb数据库
yum install -y mariadb-server 
# 2. 启动  
systemctl start mariadb 
systemctl enable mariadb 
# 3. 初始化(仅1次),不设置也能直接用,需要自己调整
mysql_secure_installation

回车,y(设置密码),yyyy

mysql  -uroot -p2  # 登陆root用户
# user mysql;
show databases;
create database blog;  # 删除用drop
select user,host from mysql.user;  # 查看用户
#创建user 所有权限 blog下所有表 用户名 远程主机         创建密码
grant     all     on blog.* to 'blog'@'172.16.1.%' identified by 'blog';  # 只写一个%代表所有机器都可以登陆
# 删除用户
# drop user 'blog'@'172.16.1.%';

测试

<?php
//$link_id=mysqli_connect('数据库服务器的ip','用户','密码');
//数据库与php在一起  ip位置写为localhost. 
//不在一起          ip位置写数据库的ip.
$link_id=mysqli_connect('localhost','blog','blog')  ;
if($link_id){
 echo "mysql successfuly ! \n";
 }else{
 echo "you conn is down mysql error \n";
 }
?>

访问 blog.azisamememe.shop/mysqli.php

安装wordpress搭建网站

戳我下载wordpress

#下载后拖入 /server/tools   或者rz -E
#unzip -t 发现自带wordpress,但是已经创建了blog目录,所以解压到当前目录再将里面的内容mv到blog下

# 修改blog目录所有者,其实只要修改wp-content就行
# 或者在wp-content下创建疏loads,然后给权限就行
chown -R nginx.nginx /app/code/blog

# 如果不想用可视化界面配置数据库,配置站点目录下的这个
vim wp-config.php 

<?php
define( 'DB_NAME', 'blog' );
define( 'DB_USER', 'blog' );
define( 'DB_PASSWORD', 'blog' );
define( 'DB_HOST', 'localhost' );

define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );
define( 'AUTH_KEY',         '*xdA@!T*gR8;mEMb}8_lkRaCZ6=a]Z/S[H)1{S6-o%p&baNH2ll(lS&]WC!!dm18' );
define( 'SECURE_AUTH_KEY',  '!$#K|didnTL|?w(X);a`Gaa7tE`%,L(yc$zfE^DBY&XN-S|b4HFK!eD2.%3%[T45' );
define( 'LOGGED_IN_KEY',    'fYU+JQyF$_R ^]M=*d7!PG+2_21&l3lE~yInK=Ld@ l|^k{U+MN%+St%c.?Gb,@[' );
define( 'NONCE_KEY',        'hdJ~k_pwO~>>EvoSQm,,9;6OWG+!HkGah,o39VwWHLlV):aq[68o^aH{2VLOI`P_' );
define( 'AUTH_SALT',        'spT]Fy%U=@~B;Nl}fyfZS5nm~qJI k6{Vk#A<-<NWhcGrvaG>_[MS=[BvY9T=R5g' );
define( 'SECURE_AUTH_SALT', 'UUTyLYxs^jCT[dw]lnwneH(APyX7b>cx$fjqS+}bYR7JrX)|t.37L]!$.0#pDgG`' );
define( 'LOGGED_IN_SALT',   '(.Csns/0{cp-cG:p,U+fhM(gQ|5Bad.J-]{mbB(W1(e!/_TJTTJEg]nr(z[QDGrf' );
define( 'NONCE_SALT',       'mtd;U~3C 0V!Cw6h6?YSwGj@|+6hoJ?A0|elaVCRCu6&|`]0XP>{K,:Dq:M?]yjW' );
$table_prefix = 'wp_';
define( 'WP_DEBUG', false );
if ( ! defined( 'ABSPATH' ) ) {
    define( 'ABSPATH', __DIR__ . '/' );
}
require_once ABSPATH . 'wp-settings.php';

访问:我的小站

排错

wordpress

# 错误1. 上传主题包   413 Request Entity Too Large
vim /etc/nginx/nginx.conf
# 在http区域中添加
client_max_body_size 10m;

nginx -t
systemctl reload nginx

# 错误2. 上传的文件大小超过php.ini文件中定义的upload_max_filesize值。
find / -name php.ini
# 修改 upload_max_filesize
systemctl restart php-fpm