OpenshiftでLaravelを使用および構成する方法に関するチュートリアルとカートリッジを調べてきましたが、役に立ちませんでした。私が見つけた最高のものでさえ、それほど役に立ちませんでした。これまでのところ、Laravel をセットアップして、中央に「Laravel」と書かれたウェルカム ページが表示されるようにすることができました。
これを達成するために私がしたことは、これらの2つのカートリッジを使用することです:
- PHP 5.6.16 - https://github.com/boekkooi/openshift-cartridge-php
- Nginx - https://github.com/boekkooi/openshift-cartridge-nginx
https://github.com/lucho2d7/openshift-quickstart-laravel5.2を使用
基本的に、これらすべてを 1 つの rhc コマンドにまとめます。
rhc app create appname --env OPENSHIFT_PHP_VERSION=5.6.16 http://cartreflect-claytondev.rhcloud.com/github/boekkooi/openshift-cartridge-php mysql-5.5 --env OPENSHIFT_NGINX_VERSION=1.9.12 http://cartreflect-claytondev.rhcloud.com/github/boekkooi/openshift-cartridge-nginx --from-code=https://github.com/lucho2d7/openshift-quickstart-laravel5.2
これは基本的に、Openshift で Nginx 1.9.12、PHP 5.6.16、MySQL 5.5、および Laravel 5.2.12 を使用してアプリを作成しました。
次に行ったのは、Laravel 5.2.12 に気付き、composer update
ディレクトリを実行して Laravel 5.2.30 を取得したことです。再びアプリにアクセスすると、まだ Laravel が表示されていました。
ここで問題が発生します。自動ログイン/登録メーカーコマンドを使用しました
php artisan make:auth
コマンドが実行され、すべてが適切なフォルダーに配置されます。アプリにアクセスすると、変更されたウェルカム ページが表示され、右上に [ログイン] ボタンと [登録] ボタンが表示されます。
ただし、[ログイン]、[登録]、[ホーム] の順にクリックすると、ページに 404 not found エラーが表示されます。
Login を押すと /login に移動し、Register を押すと /register に移動し、Home を押すと /home に移動し、エラー ページが表示されるなど、他のボタンのパスは同じです。
この問題の解決策を思いつくことができませんでした。これまでのところ、config フォルダー内の app.php ファイルに URL を追加しようとしましたが、それ以外には何も触れていません。httpd.conf ファイルにアクセスしたり、サーバーで sudo を使用したりすることはできません。エラーログを調べてみましたが、解決策も見つかりませんでした。
エラー ログは基本的に、さまざまなエラー パスに対して次の 1 行を繰り返すだけです。
2016/04/26 00:18:27 [error] 337780#0: *121 open() "/var/lib/openshift/username/app-root/runtime/repo//public/login" failed (2: No such file or directory), client: ip, server: , request: "GET /login HTTP/1.1"
私は実際に、現在これを持っている /var/lib/openshift/username/nginx/conf の nginx_http.conf にアクセスできます:
# Enable Gzip
gzip on;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_proxied any;
gzip_types
# text/html is always compressed by HttpGzipModule
text/css
text/javascript
text/xml
text/plain
text/x-component
application/javascript
application/json
application/xml
application/rss+xml
font/truetype
font/opentype
application/vnd.ms-fontobject
image/svg+xml;
gzip_static on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
gzip_vary on;
server {
listen ip:8080;
root /var/lib/openshift/username/app-root/runtime/repo//public;
location / {
index index.html index.htm index.php;
}
# pass the PHP scripts to PHP-FPM
location ~ \.php$ {
fastcgi_pass unix:/var/lib/openshift/username/php//socket/php-username.socket;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include /var/lib/openshift/username/nginx//usr/nginx-1.9.12/conf/fastcgi_params;
}
}
どんな助けでも大歓迎です!