我正在尝试部署一个 docker 容器,尽管我尝试了多种选择,但它总是崩溃。在本地工作正常,在端口 8080 上。
现在,我正在使用 PHP + Apache。
我的文件夹层次结构如下所示:
docker-compose.yml
Dockerfile
www
.htaccess
index.php
Run Code Online (Sandbox Code Playgroud)
我的 Dockerfile 是这样的:
FROM php:7.1-apache
COPY www /var/www/html
RUN a2enmod rewrite
RUN a2enmod lbmethod_byrequests
RUN service apache2 restart
EXPOSE 80
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
Run Code Online (Sandbox Code Playgroud)
我的 docker-composer.yml:
version: '3'
services:
web:
build:
context: .
dockerfile: ./Dockerfile
image: myproject
ports:
- 8080:80
Run Code Online (Sandbox Code Playgroud)
和.htaccess:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
Run Code Online (Sandbox Code Playgroud)
当我检查 Heroku 日志 (heroku logs --tail) 时,我看到的是:
Starting process with command `/usr/sbin/apache2ctl …Run Code Online (Sandbox Code Playgroud) 假设我有一个带有用户表的MySQL数据库,如下所示:
|ID| Name| email |...
|1 | John| john@doe.com|...
Run Code Online (Sandbox Code Playgroud)
我将有一个php页面,用户可以在两个独立兴趣区域的不同选项之间选择复选框.对于这个例子,我们说:最喜欢的水果和汽车.
水果:苹果,柠檬,梨,香蕉.汽车:法拉利,梅赛德斯,沃尔沃,宝马.
现在我有两种可能性:
1.)为每个水果和每个与每个用户相关的汽车创建一个列,如下所示:
|ID| Name| email |apple | lemon | pear | banana | ferrari | mercedes | volvo | BMW |
|1 | John| john@doe.com| 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
Run Code Online (Sandbox Code Playgroud)
2)创建两个新表:水果和汽车.
|ID| Name |
| 1| Apple |
| 2| Lemon |
| 3| Pear |
| 4| Banana|
|ID| Name |
| 1| Ferrari |
| 2| …Run Code Online (Sandbox Code Playgroud) 我刚刚继承了一个 Wordpress 站点,该站点由另一位 Web 开发人员开发了一半。
该站点托管在 Strato 专用服务器上,并在其上安装了 Plesk。
我刚刚创建了一个 ftp 用户来获得对该站点的 ftp 访问权限。到这里为止,一切正常。
问题是并非所有目录和文件都显示在 ftp (FileZilla) 中。我知道还有更多文件,因为我可以在 Web 文件管理器中看到它们。
我以为是权限问题,但是我检查了所有权限,它们都是正确的。
任何想法可能是什么问题?