在CentOS上部署ThinkPHP框架,可以按照以下步骤进行:
首先,你需要安装一个Web服务器,比如Apache或Nginx。
sudo yum install httpd
sudo systemctl start httpd
sudo systemctl enable httpd
sudo yum install epel-release
sudo yum install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
ThinkPHP需要PHP环境。你可以使用Remi仓库来安装PHP及其扩展。
sudo yum install epel-release
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install yum-utils
sudo yum-config-manager --enable remi-php74
sudo yum install php php-mysqlnd php-gd php-curl php-xml php-mbstring php-zip
编辑Apache的配置文件/etc/httpd/conf/httpd.conf
,确保以下模块已启用:
LoadModule rewrite_module modules/mod_rewrite.so
然后,创建一个新的虚拟主机配置文件,例如/etc/httpd/conf.d/thinkphp.conf
:
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /path/to/your/thinkphp/project
<Directory /path/to/your/thinkphp/project>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/thinkphp_error.log
CustomLog /var/log/httpd/thinkphp_access.log combined
</VirtualHost>
重启Apache:
sudo systemctl restart httpd
编辑Nginx的配置文件/etc/nginx/nginx.conf
,添加一个新的server块:
server {
listen 80;
server_name yourdomain.com;
root /path/to/your/thinkphp/project;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
重启Nginx:
sudo systemctl restart nginx
将你的ThinkPHP项目上传到/path/to/your/thinkphp/project
目录下。
确保你的数据库服务器已经安装并运行。然后,在ThinkPHP项目的.env
文件中配置数据库连接信息:
DB_TYPE=mysql
DB_HOST=127.0.0.1
DB_NAME=your_database_name
DB_USER=your_database_user
DB_PASSWORD=your_database_password
DB_PORT=3306
DB_PREFIX=
进入项目目录并运行以下命令来安装依赖:
cd /path/to/your/thinkphp/project
composer install
然后,你可以通过浏览器访问你的项目地址,例如http://yourdomain.com
。
确保项目目录和文件的权限正确:
sudo chown -R apache:apache /path/to/your/thinkphp/project
sudo chmod -R 755 /path/to/your/thinkphp/project
如果你使用的是Nginx,还需要启动PHP-FPM:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
按照以上步骤,你应该能够在CentOS上成功部署ThinkPHP项目。