【发布时间】:2022-12-10 01:00:13
【问题描述】:
我在 Linode 上运行 Ubuntu 22.04 服务器,想使用 Apache 部署一个简单的 CodeIgniter 应用程序。这样做的步骤是什么?
【问题讨论】:
-
你不应该在你做你的部分(研究和测试)之前问,如果你被困在某个地方并且在某些部分需要更多指导,那就是你可以在这里问的地方,通过描述你做了什么,以及什么您当前遇到的错误/步骤
标签: php codeigniter ubuntu linode
我在 Linode 上运行 Ubuntu 22.04 服务器,想使用 Apache 部署一个简单的 CodeIgniter 应用程序。这样做的步骤是什么?
【问题讨论】:
标签: php codeigniter ubuntu linode
这是我设置的文件的完整列表和我运行的命令,因此没有歧义(假设您以根用户身份运行):
以下步骤参考Digital Ocean Apache installation guide:
apt updateapt install apache2systemctl status apache2 应该说“活动(正在运行)”
以下步骤参考CloudBooklet PHP upgrade guide:
apt install php8.1-fpm php8.1-common php8.1-pgsql php8.1-xml php8.1-xmlrpc php8.1-curl php8.1-gd php8.1-imagick php8.1-cli php8.1-dev php8.1-imap php8.1-mbstring php8.1-soap php8.1-zip php8.1-bcmath -y如果你用的是mysql,把php8.1-pgsql改成php8.1-mysqlservice php8.1-fpm status 应该说“活动(正在运行)”
参考DigitalOcean composer installation guide了解以下步骤:
cd ~curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.phpphp /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer
请参考CodeIgniter installation guide 了解以下步骤:
cd /var/wwwcomposer create-project codeigniter4/appstarter project-roottouch project-root/writable/logs/access.logtouch project-root/writable/logs/errors.logchmod 777 project-root/writable/logs/*logcomposer update
参考DigitalOcean rewrite URLs for Apache guide了解以下步骤:
a2enmod rewrite deflate headersnano /var/apache2/sites-available/project-root.conf
<VirtualHost *:80>
ServerAdmin info@example.com
ServerName www.example.com
ServerAlias www.example.com
Protocols h2 http/1.1
DocumentRoot /var/www/project-root/public
<Directory /var/www/project-root/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/www/project-root/writable/logs/errors.log
CustomLog /var/www/project-root/writable/logs/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
a2ensitesystemctl restart apache2
参考Linode's enabling HTTPS guide了解以下步骤:
apt remove certbotsnap install --classic certbotln -s /snap/bin/certbot /usr/bin/certbotcertbot --apache
参考CloudBooklet's PHP-FPM installation guide了解以下步骤:
service php8.1-fpm restarta2enconf php8.1-fpma2dismod mpm_preforka2enmod mpm_event proxy_fcgi setenvifservice apache2 restart
请参考Linode's managing log files guide 了解以下步骤:
nano /etc/logrotate.d/project-root
/var/www/project-root/writable/logs/*.log {
daily
rotate 3
size[20M]
compress
delaycompress
create 755 root root
missingok
notifempty
}
您可能还想安装日志记录,例如Papertrail
【讨论】: